如何在函数中调用和查看数组

时间:2014-03-26 15:38:44

标签: php arrays function loops foreach

我是PHP和Kohana的新手。 我想知道如何在函数中调用数组。

我有变量$ productlist,我想用函数添加更多元素。

public $productlist =  array();
public function action_index()
{
   $product = new Product("Laptop","HP4897");
   $product2 = new Product("TV","Samsung 8773");


   $productlist[] = product;
   $productlist[] = product2;

   $this->add_product_to_array("Ebook","Everything you want to know");
   $this->show_productlist();
}

public function add_product_to_array($product_name, $product_description)
{
    $newproduct = new Product($product_name, $product_description);
    array_push($productlist,$newproduct);
}
public function show_productlist(){
    foreach($productlist as $key => $value)
    {
        print_r($value->get_product_name().'</br>');
    }
}

这是我得到的例外: * ErrorException [警告]:array_push()期望参数1为数组,null为*

如果我添加foreach($ this-&gt; productlist为$ key =&gt; $ value),它会告诉我它无法找到产品列表。

Product.php

class Product {

private $_product_name;
private $_product_description;


function __construct($name,$description)
{
    $this->_product_name = $name;
    $this->_product_description = $description;
}

public function get_product_name()
{
    return  $this->_product_name;
}
//etc

1 个答案:

答案 0 :(得分:0)

PHP Classes and Objects - The Basics

当您访问$productlist数组时,您需要使用$this->productlist。您似乎在Product课程中已经知道了这一点。发生了什么事?