<?php
$fruits = array(' appLE', 'pear3', 'banana--');
$vegetables = array('pea', 'broccoli ');
$processArr = array(&$fruits, &$vegetables);
foreach($processArr as &$array)
foreach($array as &$item)
{
$item = preg_replace('/[^a-z]/i', '', $item);
$item = ucwords(strtolower($item));
}
echo '<pre>';
print_r($fruits);
print_r($vegetables);
结果:
Array
(
[0] => Apple
[1] => Pear
[2] => Banana
)
Array
(
[0] => Pea
[1] => Broccoli
)
问题:
我知道这个$processArr = array(&$fruits, &$vegetables);
,意思是传递$fruits
和$vegetables
的引用,如果$processArr
改变,$fruits
和$vegetables
也会改变,但我不明白为什么在foreach
中还要使用&
,有人能解释一下吗?谢谢。
foreach($processArr as &$array)
foreach($array as &$item)