Сбросить один массив на основе другого значения массива в php?

Как я могу удалить один индекс массива на основе другого значения массива. Например-

Array1
(
[0] => @@code
[1] => @@label
[2] => @@name
[3] => @@age
)

Array2
(
[0] => 123jj
[1] => test
[2] => john
[3] => 45
)

Array3
(
[0] => 2 #2 is index to be unset in array1 and array2
[1] => 3 #3 is index to be unset in array1 and array2
) 

У меня есть 3 массива, я хочу сбросить индекс массива1 и массива2 на основе значения массива3 с помощью php. Как я могу использовать метод unset() для этого?

unset($array1,$array3) #this is wrong, but some thing like that 
unset($array2,$array3) 

Без цикла Out for.

я должен получить

Array1
(
[0] => @@code
[1] => @@label
)

Array2
(
[0] => 123jj
[1] => test
)

person unknownbits    schedule 30.10.2013    source источник


Ответы (2)


Вы задали аналогичный вопрос и удалили его после получения ответа:

удалить индексы массива из значения другого массива?

$firstArray = array( 0 => '@@code' ,1 => '@@label' ,2 => '@@name' ,3 => '@@age' );

$keysArray = array( 0 ,1 );

$resultArray = array_diff_key( $firstArray ,array_flip( $keysArray ) );

var_dump( $resultArray );
person Uours    schedule 10.12.2013
comment
Это был тот самый парень? Я не торопился, чтобы написать очень хороший ответ, но обнаружил, что вопрос был удален :( - person Nic Wortel; 10.12.2013
comment
@Nic Я просматривал профиль ОП этого вопроса и нашел этот вопрос! - person Uours; 10.12.2013

Может быть, вам это нужно?

foreach($array3 as $tmp){
  unset($array1[$tmp]);
  unset($array2[$tmp]);
}
person Lajos Veres    schedule 30.10.2013
comment
Я хочу это без использования цикла for. Что-то вроде unset($array1,$array3) unset($array2,$array3) - person unknownbits; 31.10.2013