我正在考虑如何在foreach
内部使用function
。我已将代码重写为最简单的形式,但仍然无法运行。这是我想要做的简单版本:
$arr = array("first","second","third");
function myFunction(){
foreach($arr as $val){
echo $val.' | ';
}
}
myFunction();
我知道解决方案必须是那些“doh”时刻之一,但我必须冒着尴尬的风险,因为我无法得到它......
答案 0 :(得分:2)
在PHP中,需要在函数内部声明全局变量。你只需要说你使用全局变量,否则PHP不会知道。所以你只需要像这样添加global $arr;
:
$arr = array("first","second","third");
function myFunction(){
global $arr; // <-- This states we are using the $arr defined globally.
foreach($arr as $val){
echo $val.' | ';
}
}
myFunction();
答案 1 :(得分:1)
您也可以将数组传递给函数。
$arr = array("first","second","third");
function myFunction($arr){
foreach($arr as $val){
echo $val.' | ';
}
}
myFunction($arr);
答案 2 :(得分:0)
$arr = array("first","second","third");
function myFunction($target){
foreach($target as $val){
echo $val.' | ';
}
}
myFunction($arr);//$arr will send to function for process
试一试!