PHP 在数组中创建新对象
PHP create new objects into array
我创建了一本杂志 class,其中包含三个属性,我希望在创建对象时将其直接存储到数组中。现在,我以为我能做的就是直接在数组中创建新对象,但它似乎不起作用?
<?php
class Magazine {
public $id;
public $name;
public $price;
public function __contruct($id, $name, $price) {
$this->id = $id;
$this->name = $name;
$this->price = $price;
}
}
$magazines = array(
new Magazine("svg_aftbld","Stavanger Aftenblad", 200),
new Magazine("tsk_ubld","Teknisk Ukeblad", 300),
new Magazine("se_ho","Se og Hør", 100),
new Magazine("fam","Familien", 150)
);
print_r($magazines);
?>
以上代码的输出如下:
Array ( [0] => Magazine Object ( [id] => [name] => [price] => ) [1] => Magazine Object ( [id] => [name] => [price] => ) [2] => Magazine Object ( [id] => [name] => [price] => ) [3] => Magazine Object ( [id] => [name] => [price] => ) )
我也试过创建一个空数组,然后像这样通过推入新对象来填充它:
<?php
array_push($magazines,new Magazine("svg_aftbld","Stavanger Aftenblad", 200));
array_push($magazines,new Magazine("tsk_ubld","Teknisk Ukeblad", 300));
array_push($magazines,new Magazine("se_ho","Se og Hør", 100));
array_push($magazines,new Magazine("fam","Familien", 150));
?>
但结果与之前相同。
正如您可能猜到的那样,我正在学习 PHP 并且我来自 Java。我读过几个类似的问题,但其中大多数问题似乎都过于复杂了。但我想可能是不太了解的人 PHP。也请随意向我讲授最佳实践 ;)
你写的是 __contruct
而不是 __construct
...
我创建了一本杂志 class,其中包含三个属性,我希望在创建对象时将其直接存储到数组中。现在,我以为我能做的就是直接在数组中创建新对象,但它似乎不起作用?
<?php
class Magazine {
public $id;
public $name;
public $price;
public function __contruct($id, $name, $price) {
$this->id = $id;
$this->name = $name;
$this->price = $price;
}
}
$magazines = array(
new Magazine("svg_aftbld","Stavanger Aftenblad", 200),
new Magazine("tsk_ubld","Teknisk Ukeblad", 300),
new Magazine("se_ho","Se og Hør", 100),
new Magazine("fam","Familien", 150)
);
print_r($magazines);
?>
以上代码的输出如下:
Array ( [0] => Magazine Object ( [id] => [name] => [price] => ) [1] => Magazine Object ( [id] => [name] => [price] => ) [2] => Magazine Object ( [id] => [name] => [price] => ) [3] => Magazine Object ( [id] => [name] => [price] => ) )
我也试过创建一个空数组,然后像这样通过推入新对象来填充它:
<?php
array_push($magazines,new Magazine("svg_aftbld","Stavanger Aftenblad", 200));
array_push($magazines,new Magazine("tsk_ubld","Teknisk Ukeblad", 300));
array_push($magazines,new Magazine("se_ho","Se og Hør", 100));
array_push($magazines,new Magazine("fam","Familien", 150));
?>
但结果与之前相同。
正如您可能猜到的那样,我正在学习 PHP 并且我来自 Java。我读过几个类似的问题,但其中大多数问题似乎都过于复杂了。但我想可能是不太了解的人 PHP。也请随意向我讲授最佳实践 ;)
你写的是 __contruct
而不是 __construct
...