PHP 想从1组二维数组里取1个下标的值去其他数组查询另1个下标的值,然后用查询出来值替换原来二维数组里的

PHP 想从1组二维数组里取1个下标的值去其他数组查询另1个下标的值,然后用查询出来值替换原来二维数组里的,第1张

$arr的值还是没变 的原因是: 你以值传递的方式修改的并不是$arr数组,而是$arr数组的副本,如果想修改$arr数组本身,需要将值传递修改为地址传递。

foreach($arr as $cc){ 这是值传递,改为地址传递即可 foreach($arr as &$cc)

完整代码如下:

<php

$arr = array(1 => array('id' => 1, 'pass' => '1'), '2' => array('id' => 2,'pass' => 2));

$row = array(1 => 'abc', 2 => 'def');

foreach ($arr as &$cc) //此处修改为地址传递

{

$id = $row[$cc['pass']];

$cc['pass'] = $id; //替换pass的值

}

echo '<pre>';

print_r($arr);

echo '</pre>';

>

你数组写的有问题

$a=Array

(

    [0] => Array

    (

        '_id' => '585c8254066893de6ed6a20b',

      'source' => 'vip'

    )

    ,

    [1] => Array

    (

      '_id' => '58544ee4ec680e434accd3aa',

      'source' => 'shuhaha'

    )

)

foreach($a as $k => $v){

    if(in_array('shuhaha', $v)){

        unset($a[$k]);

    }

}

for:

for($i=0;$i<count($sss);$i++){

    echo $sss[$i]['aid']"<br>";

}

echo "<hr>";

foreach:

foreach($sss as $v){

    echo $v['aid']"<br>";

}

echo "<hr>";

while:

$i = 0;

while($i<count($sss)){

    echo $sss[$i]['aid']"<br>";

    $i++;

}

可以php函数array_sum(),遍历的求和

$array = array(array(1,2),array(3,4));

$count = 0;

foreach($array as $key=>$value){

$count += array_sum($value);

}

echo $count;

    <php 

    function count_arrs($arrs)     

    {    

        //首先你得要判断它是否为二维数组 

        foreach($arrs as $arr){

            if(is_array($arr){

                //如果是二维数组,返回其元素个数(即一维数组的个数) 

                return count($arrs);

            }

        }

        return 0;

    }   

    >

不管是几维,思路都是一样的

以上就是关于PHP 想从1组二维数组里取1个下标的值去其他数组查询另1个下标的值,然后用查询出来值替换原来二维数组里的全部的内容,包括:PHP 想从1组二维数组里取1个下标的值去其他数组查询另1个下标的值,然后用查询出来值替换原来二维数组里的、php 获取二维数组元素对应key的路径、PHP循环输出二维数组的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9510653.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存