我创建了一个数组。然后,我调用了一个函数。该函数在该数组内添加了另一个数组。但是当我print_r
主数组时,它返回一个空数组。请注意,使用function
的原因是我打算多次调用它。
PHP
:
$myarray = array();
myfunc();
function myfunc() {
$a = 1;
$b = "my name";
$myarray[] = array(
'a'=>$a,
'b'=>$b
);
}
print_r($myarray);
答案 0 :(得分:1)
实际上,您必须从函数中return
数组,将其捕获到变量并打印该变量。
<?php
function myfunc() {
$myarray[] = array(
'a'=>1,
'b'=>"my name"
);
return $myarray;
}
$myarray = myfunc();
print_r($myarray);
或者您可以使用 Passing by Reference
<?php
$myarray = array();
function myfunc(&$myarray) {
$myarray[] = array(
'a'=>1,
'b'=>"my name"
);
}
myfunc($myarray);
print_r($myarray);
注意:-函数内部的变量与函数外部的同一变量没有关系,直到将其作为引用传递[第二个答案]。这属于 功能范围