简体   繁体   English

从数组获取单个值

[英]Get single value from an array

I have below array result 我有下面的数组结果

Array ( [0] => Item Object ( [name:protected] => My Super Cool Toy [price:protected] =>      10.99 ) )

I need to get [name:protected] => My Super Cool Toy from this array. 我需要从此阵列中获取[name:protected] => My Super Cool Toy

Please tell me how to get it, 请告诉我如何获得它,

I will paste my classes below 我将在下面粘贴我的课程

class ShoppingCart
{
private $items = array();
private $n_items = 0;
function addItem( Item $item )
{
$this->items[] = $item;
$this->n_items = $this->n_items + 1;
print_r($this->items);

}
}

and

class Item {
protected $name;
protected $price;

 public function __construct($name, $price) {
    $this->name = $name;
    $this->price = $price;
}

public function getName() {
    echo "item is $this->name";
    return $this->name;
}

public function getPrice() {
    return $this->price;
}

}

and

require_once('AddingMachine.php');
require_once('item.php');
//$arrayofnumbers = array(100,200);

$objectname = new ShoppingCart();
$objectname->addItem(new Item('My Super Cool Toy', 10.99));

 $obname = new Item($items,44);
$obname->getName();

Thanks 谢谢

如果我正确地理解它,那么您将在ShoppingCart类的addItem方法中获得此数组,因此,只需使用相应的getter方法即可访问它,例如:

$this->items[0]->getName();

You can try : 你可以试试 :

$objectname = new ShoppingCart();
$objectname->addItem(new Item('My Super Cool Toy', 10.99));

foreach ( $objectname->getItems() as $item ) {
    echo $item->getName(), PHP_EOL;
}

Modified Class 改良班

class ShoppingCart {
    private $items = array();
    private $n_items = 0;

    function addItem(Item $item) {
        $this->items[] = $item;
        $this->n_items = $this->n_items + 1;
    }

    function getItems($n = null) {
        return $n === null ? $this->items : (isset($this->items[$n]) ?  : $this->items[$n]);
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM