&$bbc1
//算实际余货!!!!!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ continue;
foreach($list4 as $rows)
{ // echo $rows['shengdai'];
//require('../admin/yuhuobhfujian.php');
// echo round($jishusl);
$jscs=0;
$qycs=0;
$sdcs=0;
foreach ($list3 as &$bbc1) { // &$bbc1 引用的是数组的原值 不是拷贝 参考
// 查询 省代 及对应的余货
if(!empty($rows['shengdai']))
{
if (strpos($bbc1['shengdai'],$rows['shengdai'])!== false) {
//获取省代姓名 对应的id 余货
//echo $bbb1['shengdai'];
echo $bbc1['yuhuo'];
echo $bbc1['yuhuo']=$bbc1['yuhuo']-2;
}
if(empty($rows['shidai'])){
if(empty($rows['quyu'])){
if(empty($rows['jishu'])){
continue;
}else{ echo 'aaan'; echo $bbc1['yuhuo'];
if($jscs==0){
require('../admin/yuhuobhfujian.php');
// echo round($shidaisl);
echo $rows['jishu']; echo 'aaan';
echo $jishusl;
echo 'aaa';
$bbc1['yuhuo']= $bbc1['yuhuo']-$jishusl;
echo $bbc1['yuhuo'];
echo 'jishu';
$jscs=$jscs+1;
echo $hh;
}
}
}else{
if($qycs==0){
require('../admin/yuhuobhfujian.php');
// echo round($shidaisl);
echo $rows['quyu']; echo 'a1aa';
echo $quyusl;echo 'aab';
$bbc1['yuhuo']= $bbc1['yuhuo']-$quyusl;
echo $bbc1['yuhuo'];
echo $hh;
$qycs=$qycs+1;
}}
}else{
if($sdcs==0){
require('../admin/yuhuobhfujian.php');
// echo round($shidaisl);
echo $rows['shidai']; echo 'aac';
echo $shidaisl; echo 'aac';
$bbc1['yuhuo']= $bbc1['yuhuo']-$shidaisl;
echo $bbc1['yuhuo'];
echo $hh;
$sdcs=$sdcs+1;
}}
}
}
}
引用的是数组的原值 不是拷贝
php foreach如何修改值?
中用foreach改变数组的值的问题
翻到PHP文档的foreach那页这样写道:
“foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。有两种语法:
1 2 3 4 |
|
第一种格式遍历给定的 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。
第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量 $key。”
那么“第一种格式遍历给定的 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。”是什么意思?意思就是说用foreach来遍历数组,所操作的是指定数组的一个拷贝,而不是数组本身。就像有一个克隆的你,别人对克隆的你不管怎么拳打脚踢,对你也是没有影响的。
例如:
1 2 3 |
|
这样的修改方法修改的并不是$array本身,是修改它拷贝的一个数组,虽然一样但不是$array.所以对$array没有影响。
那么要怎么做?要这样做:
1 2 3 |
|
虽然$k和$v一样也是拷贝的,但拷贝的$k的值还是和原数组的$k的值是一样的,所以这样就可以成功了。
还有一种比较高级的方法:可以很容易地通过在 $v 之前加上 & 来修改数组的元素。此方法将以引用赋值而不是拷贝一个值。例如:
1 2 3 4 |
|
这样也就成功。