在我的网站的一个页面上,我在9个不同的阵列上连续有9个natsorts,一切都按预期工作:
natsort($Array1);
natsort($Array2);
natsort($Array3);
natsort($Array4);
natsort($Array5);
natsort($Array6);
natsort($Array7);
natsort($Array8);
natsort($Array9);
但是,我尝试构造一个数组数组,并将其合并到for循环中,如下所示:
$MasterArray = array($Array1, $Array2, $Array3, $Array4, $Array5, $Array6, $Array7,
$Array8, $Array9);
for ($i = 0; $i < 9; $i++) {
natsort($MasterArray[$i]);
}
这种情况失败了,为什么这是无效的?
注意:error_log ---&gt; PHP致命错误:无法使用[]进行读取....使用$ MasterArray是问题。
答案 0 :(得分:0)
使用
MasterArray = array(&$Array1, &$Array2, &$Array3, &$Array4, &$Array5, &$Array6, &$Array7, &$Array8, &$Array9);
&
是&#34;参考&#34;链接到原始数组...没有&#34;&amp;&#34;,您的$MasterArray = array($Array1, ...)
创建$ MasterArray与副本 $ Array1等,所以排序重新排序复制....
使用&
,它会创建一个指向原始$ Array1等的链接,因此排序将重新排序原始$ Array1