静态函数中的php foreach
在静态函数中有一个foreach循环。但出于某种原因,它只做一个循环。我做错了什么静态函数中的php foreach,php,loops,foreach,Php,Loops,Foreach,在静态函数中有一个foreach循环。但出于某种原因,它只做一个循环。我做错了什么 static function printall(){ foreach (self::$products as $product){ return print_r($product); } } 这给了我: Array ( [0] => 700152 [1] => 21.0000 [2] => 5.2000 [3] =>
static function printall(){
foreach (self::$products as $product){
return print_r($product);
}
}
这给了我:
Array
(
[0] => 700152
[1] => 21.0000
[2] => 5.2000
[3] => 24.7900
)
但当我打印自我:$products时,我得到以下信息:
Array
(
[0] => Array
(
[0] => 700152
[1] => 21.0000
[2] => 5.2000
[3] => 24.7900
)
[1] => Array
(
[0] => 700000
[1] => 21.0000
[2] => 3.4700
[3] => 16.5200
)
[2] => Array
(
[0] => 705300
[1] => 21.0000
[2] => 1.3900
[3] => 6.6100
)
)
return语句通过返回一个值来终止函数,因此循环只运行一次迭代。放下它,你会没事的:
static function printall(){
foreach (self::$products as $product){
print_r($product);
}
}
返回停止方法。愚蠢,谢谢!我知道这会是一件愚蠢的事