如何打印出视图文件中的值


How to print out the value in view file?

我有一个这样的数组,我想在视图文件中打印出来,但它是空的,数组就像

array(
(int) 0 => array(
    'ProductsUserNode' => array(
        'product_user_node_id' => '155',
        'user_node_id' => '53',
        'product_id' => '1',
        'is_active' => '1',
        'expiry' => '0000-00-00',
        'created' => '2013-01-10 10:27:22',
        'modified' => '2013-01-10 10:27:22',
        'created_view' => '10:27 AM, Jan 10,2013',
        'modified_view' => '10:27 AM, Jan 10,2013'
    ),
    'UserNode' => array(
        'user_node_id' => '53',
        'division_id' => '28',
        'role_id' => '4',
        'user_id' => '56',
        'created' => '2013-01-10 10:27:20',
        'created_view' => '10:27 AM, Jan 10,2013'
    ),
    'Product' => array(
        'product_id' => '1',
        'name' => 'Manager',
    )
),

我在视图文件中使用此代码

              foreach ($products as $products)
             {
             ?>
            <tr>
                <td>    <?php $products['ProductsUserNode']['product_id']?> </td>
                <td>    <?php $products['Product']['name']?>    </td>
            </tr>
            <?php }?>           

我还在控制器中设置了类似的变量

            $this->set('products',$products);

但它不起作用,有什么问题?提前感谢

使用echo关键字打印变量。

 foreach ($products as $product)
 {
 ?>
 <tr>
      <td>    <?php echo $product['ProductsUserNode']['product_id']?> </td>
      <td>    <?php echo $product['Product']['name']?>    </td>
 </tr>
 <?php }?>   

foreach($products作为$products)//错误的

您需要正确地对其进行迭代(基本php!):

<?php foreach ($products as $product) { ?>
        <tr>
            <td> <?php echo h($product['ProductsUserNode']['product_id']); ?> </td>
            <td> <?php echo h($product['Product']['name']); ?> </td>
        </tr>
<?php } ?>    

还要注意h()以保护视图。

附言:你应该"烘焙"你的代码。这样你就可以从中学习如何正确对待它。