2013-12-16 4 views
0

У меня есть массив как это:Как удалить массив массив

[[a,b],[c,d]] 

Как я могу удалить внешний массив, так он становится:

[a,b],[c,d] 

Я попытался с помощью снята с охраны, но не может найти решение.

Я получил этот ответ от asign массивов в цикле к другой переменной .. так как я могу получить доступ к циклам вне цикла?

foreach($arr3 as $key => $value) 
{ 
    $newArr[$key] = $value; 

    echo json_encode($value); // this will answer my question 
} 
     echo json_encode($value); // when i echo outside loop it will not display as inside loop 
+0

Если вы это сделаете, вам понадобятся отдельные переменные для их хранения – scrblnrd3

+0

внутренний массив? .. как это сделать? – airi

+0

забыл упомянуть, что мой массив зацикливается с базой данных – airi

ответ

2

Простой способ сделать это, как показано ниже.

foreach($array as $key => $value) 
{ 
    $newArr[$key] = $value; 
} 

$newArr содержит новый массив, который вы просите.

Комментарий Ответ

Вы можете также против кошки это.

$concat = ""; 
foreach($arr3 as $key => $value) 
{ 
    $newArr[$key] = $value; 
    $concat .= json_encode($value).','; 
} 
echo rtrim($concat,','); 
+0

Его не '$ k', его' $ key'. Я собирался отредактировать его, но потом подумал, что лучше довести его до вашего сведения. С другой стороны, это просто делает то, что может сделать '$ newArray = $ array;'. Зачем использовать цикл. –

+1

Еще не надо. Этот цикл присваивает весь массив другой переменной. Это может быть просто сделано оператором '=', если это необходимо –

+0

Как получить $ value вне foreach? – airi

2

Вы не должны удалять внешний массив. Вы можете просто получить доступ к индексу массива и применить его к другому массиву.

В качестве примера;

$arr = array(array('x','y'),array('z')); 

К этому можно обращаться;

$arr[0]; 
1
$array2=$array[0]; 
$array3=$array[1]; 
unset($array); 
Смежные вопросы