我知道我可能会错过一些简单的东西,但我有一个foreach循环,我试图修改第一个数组的值,并输出一个新的数组与修改作为新的价值。PHP的foreach循环输出到一个新的阵列
基本上我开始以与阵列: 0 => A:B 1 => B:C 2 => C:d
而我使用爆炸()来剥离出:年代和第二字母,所以想留下以与阵列: 0 =>甲 1 =>乙 2 => C^
我的函数的爆炸()部分工作正常,但只有我似乎获得单个字符串输出。 A,B,和C.
我知道我可能会错过一些简单的东西,但我有一个foreach循环,我试图修改第一个数组的值,并输出一个新的数组与修改作为新的价值。PHP的foreach循环输出到一个新的阵列
基本上我开始以与阵列: 0 => A:B 1 => B:C 2 => C:d
而我使用爆炸()来剥离出:年代和第二字母,所以想留下以与阵列: 0 =>甲 1 =>乙 2 => C^
我的函数的爆炸()部分工作正常,但只有我似乎获得单个字符串输出。 A,B,和C.
声音像你想要这样的东西?
$initial = array('A:B', 'B:C', 'C:D');
$cleaned = array();
foreach($initial as $data) {
$elements = explode(':', $data);
$cleaned[] = $elements[0];
}
啊哈!正是我需要的。谢谢! – RobHardgood 2010-03-28 04:56:17
除非阵列引用,foreach指定数组的一个拷贝和不操作该数组本身
$arr = array(0 => 'A:B', 1 => 'B:C', 2 => 'C:D');
// foreach($arr as $val) will not work.
foreach($arr as &$val) { // prefix $val with & to make it a reference to actual array values and not just copy a copy.
$temp = explode(':',$val);
$val = $temp[0];
}
var_dump($arr);
输出:
array(3) {
[0]=>
string(1) "A"
[1]=>
string(1) "B"
[2]=>
&string(1) "C"
}
嘿,我也尝试过你的回应,因为它看起来我也需要做,但由于某种原因,我无法让它工作...不知道为什么,它不是那么复杂,它已经只是关于我是如何结构化的。哦,好吧,谢谢:) – RobHardgood 2010-03-28 04:57:16
你可以发布你的函数吗? – animuson 2010-03-28 04:36:28