1

私は2つの多次元配列を持っています:

$first_array = array(
  0 => array(tid => 141), 
  1 => array(tid => 142), 
  2 => array(tid => 128)
);

$second_array = array(
  0 => array(tid => 141), 
  1 => array(tid => 128)
);

最初の配列に存在するアイテムが2番目の配列にあるかどうかを確認する必要があります。ある場合は、最初の配列からそれらを削除する必要があります。

上記の例をとると、次のように$first_arrayなります。array(0 => array(tid => 142))

助言がありますか?

編集:これが私が使用したものです:

$first_array = array(
  0 => array('tid' => 141), 
  1 => array('tid' => 142), 
  2 => array('tid' => 128)
);

$second_array = array(
  0 => array('tid' => 141), 
  1 => array('tid' => 128)
);


function my_serialize(&$arr,$pos){ 
  $arr = serialize($arr); 
} 

function my_unserialize(&$arr,$pos){ 
  $arr = unserialize($arr); 
} 

 //make a copy 
$first_array_s = $first_array; 
$second_array_s = $second_array; 

// serialize all sub-arrays 
array_walk($first_array_s,'my_serialize'); 
array_walk($second_array_s,'my_serialize'); 

// array_diff the serialized versions 
$diff = array_diff($first_array_s,$second_array_s); 

// unserialize the result 
array_walk($diff,'my_unserialize'); 

print_r($diff); 
4

0 に答える 0