2次元配列の判定値は同じ

WBOY
WBOYオリジナル
2016-06-13 13:16:24875ブラウズ

二次元配列の判定値は同じです
$array = array(array('pid'=>1,'name'=>a),array('pid'=>2,' name'=>b ),array('pid'=>3,'name'=>c),array('pid'=>1,'name'=>a),array('pid '=>4, 'name'=>d));
このような 2 次元配列の場合、pid と name が同時に等しいかどうかを判断する方法 (('pid'=> など) ;1,'name'=>a (例では) ) 値は同じです)
Yes の場合は終了します

-----解決策----- -------------------------

PHP コード

$配列 = 配列(
      array('pid'=>1,'name'=>'a'),
      array('pid'=>2,'name'=>'b'),
      array('pid'=>3,'name'=>'c'),
      array('pid'=>1,'name'=>'a')
);
$tmp=配列();
foreach($array as $k=>$v){
       if(!$tem[$v[pid].'_'.$v[名前]]){
              $tem[$v[pid].'_'.$v[名前]]=$v;
              print_r($v);
        }それ以外{
                出口;
        }
}
<br><font color="#e78608">------解決策------------------</font><br>
PHP コード

$配列 = 配列(
    array('pid' => 1, 'name' => 'a'),
    array('pid' => 2, 'name' => 'b'),
    array('pid' => 3, 'name' => 'c'),
    array('pid' => 4, 'name' => 'd'),
    array('pid' => 5, 'name' => 'e'),
    array('pid' => 1, 'name' => 'a'),
    array('pid' => 4, 'name' => 'd')
);
$idList = 配列();
foreach ($array as $key => $value) {
    $idList[] = implode(',', $value);
}
$idList2 = array_diff_assoc($idList, array_unique($idList));
foreach ($idList2 as $key => $value) {
    $akey = array_search($value, $idList);
    echo '配列の繰り返し:';
    print_r($array[$akey]);
<div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。