Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将数组与WHERE子句合并?_Php_Arrays_Codeigniter - Fatal编程技术网

Php 如何将数组与WHERE子句合并?

Php 如何将数组与WHERE子句合并?,php,arrays,codeigniter,Php,Arrays,Codeigniter,如何将第二个数组添加到[myid]匹配的第一个数组中 第一阵列 第二阵列 需要将这些项目添加到阵列1中吗 我已尝试合并阵列,但没有用,我正在将另外两个对象添加到此阵列中 我希望我的要求是明确和可读的,如果没有请在评论中提及,以便我可以解释它更多 答案可能在codeigniter中,我也在使用codeigniter框架假设您希望结果数组将项目合并到第一个数组中 foreach($array1 as $key => $array){ foreach($array as $key2 =>

如何将第二个数组添加到[myid]匹配的第一个数组中

第一阵列

第二阵列

需要将这些项目添加到阵列1中吗

我已尝试合并阵列,但没有用,我正在将另外两个对象添加到此阵列中

我希望我的要求是明确和可读的,如果没有请在评论中提及,以便我可以解释它更多


答案可能在codeigniter中,我也在使用codeigniter框架

假设您希望结果数组将项目合并到第一个数组中

foreach($array1 as $key => $array){
  foreach($array as $key2 => $value){
    $results[$key]['myid'] = $value;
  }
}

foreach($array2 as $key => $array){
  foreach($array as $key3 => $value){
    $results[$key3]['projects'] = $value;
  }
}
print_r($results);
您希望结果集如下所示

 Array
 (
    [0] => Array
        (
            [myid] => 70
            [realname] => Kishore
            [full_name] => Kishore Chandra
            [category] => professional
            [firm_name] => Yes
            [designation] => Mechanical
            [address] => Dwarakanagar 5th lane
            [city] => Vishakhapatnam
            [email] => yesapps.india@gmail.com
            [projects] => 20
        )

    [1] => Array
        (
            [myid] => 75
            [realname] => Vinod kumar
            [full_name] => Kishore Chandra
            [category] => professional
            [firm_name] => 
            [designation] => 
            [address] => 
            [city] => 
            [email] => vinod.k.alluri@gmail.com
            [projects] => 43
        )

)
所以试试这个代码

foreach($b as $key => $val){        
    if(isset($a[$key]) && $a[$key]->myid == $val->myid){
        $a[$key]->projects = $val->projects; 
    }       
}
如果将标准数组转换为数组 json_解码$a,对 json_解码$b,对吗

$a = Array
(
        0 => Array
            (
                'myid' => 70,
                'realname' => 'Kishore',
                'full_name' => 'Kishore Chandra',
                'category' => 'professional',
                'firm_name' => 'Yes',
                'designation' => 'Mechanical',
                'address' => 'Dwarakanagar 5th lane',
                'city' => 'Vishakhapatnam',
                'email' => 'yesapps.india@gmail.com',
            ),

        1 => Array
           (
                'myid' => 75,
                'realname' => 'Vinod kumar',
                'full_name' => 'Kishore Chandra',
                'category' => 'professional',
                'firm_name' => '',
                'designation' => '',
                'address' => '',
                'city' => '',
                'email' => 'vinod.k.alluri@gmail.com'
           )
 );

 $b = Array ( 0 => Array(
                    'myid' => 70,
                    'projects' => 20
                    ),
            1 => Array(
                    'myid' => 75,
                    'projects' => 43
                    )
            );

foreach($b as $key => $val){        
    if(isset($a[$key]) && $a[$key]['myid'] == $val['myid']){
        $a[$key]['projects'] = $val['projects']; 
    }       
}
print_r($a);
注:

$b是第二个数组 $a是第一个数组
假设您想要合并两个“myid”匹配的数组。是的,您是rite,但当我遵循您发布的上述代码时,我将获得第二个数组结果。。你能为这个答案做一个样品吗?a美元和b美元是多少?如果它是$array1和$array2,它就不起作用。如果有任何使用codeigniter的解决方案,请发送它,我现在正在这个项目中使用该框架。$a和$b,您必须在函数中传递两个参数。能否显示要在其上放置where子句的表结构?它实际上不是where子句:我希望两个数组中的myid都匹配myid的结果尝试从代码中获取第2行的非对象属性是否将$b更改为第2个数组变量名,将$a更改为第1个数组变量是的,我做到了!确认这两个数组的数据与我在上面的问题中提到的相同,您甚至可以给我JSON数组的答案。。实际上,我已经将这两个arraysforeach$data2解码为$key=>$val{ifisset$data1[$key]&&$data1[$key]->myid==val->myid{$data1[$key]->projects=$val->projects;}}错误消息:试图获取非对象的属性
foreach($b as $key => $val){        
    if(isset($a[$key]) && $a[$key]->myid == $val->myid){
        $a[$key]->projects = $val->projects; 
    }       
}
$a = Array
(
        0 => Array
            (
                'myid' => 70,
                'realname' => 'Kishore',
                'full_name' => 'Kishore Chandra',
                'category' => 'professional',
                'firm_name' => 'Yes',
                'designation' => 'Mechanical',
                'address' => 'Dwarakanagar 5th lane',
                'city' => 'Vishakhapatnam',
                'email' => 'yesapps.india@gmail.com',
            ),

        1 => Array
           (
                'myid' => 75,
                'realname' => 'Vinod kumar',
                'full_name' => 'Kishore Chandra',
                'category' => 'professional',
                'firm_name' => '',
                'designation' => '',
                'address' => '',
                'city' => '',
                'email' => 'vinod.k.alluri@gmail.com'
           )
 );

 $b = Array ( 0 => Array(
                    'myid' => 70,
                    'projects' => 20
                    ),
            1 => Array(
                    'myid' => 75,
                    'projects' => 43
                    )
            );

foreach($b as $key => $val){        
    if(isset($a[$key]) && $a[$key]['myid'] == $val['myid']){
        $a[$key]['projects'] = $val['projects']; 
    }       
}
print_r($a);