Joe*_*chi 1 php arrays multidimensional-array
我有这个非常非常基本的代码
foreach ($formatted_results as $result) {
$result['profile_pic']="joe";//set all values to joe
var_dump( $result['profile_pic']);//prints joe
}
foreach ($formatted_results as $result) {
var_dump( $result['profile_pic']);//does not print joe!
}
Run Code Online (Sandbox Code Playgroud)
其中formatted_results是包含其他数组的数组。现在,您可以看到,我正在第一个循环中修改formatted_results中每个数组的值以包含名称joe,然后我进行打印以确保确定,第一个循环的打印返回“ joe”
但是,我设置的值不会以某种方式持久化,因为当我再次循环同一数组以检查其自身数组的内部值时,它为我提供了旧值。
该代码与我在此处显示的代码完全一样,两者之间没有任何关系。我猜想这里有一些关于指针的东西使我难以理解。
该值未设置为实际值array,而是分配给了循环外不可用的当前元素。您需要将值设置为要array遍历的实际值。尝试-
foreach ($formatted_results as &$result) {
$result['profile_pic']="joe";//set all values to joe
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |