2013-05-11 3 views
0

Представьте этот код:Массивы в PHP. Взлет переменного из массива

$array1 = "20"; 
$array2 = "40"; 
$array3 = ""; 
$arraydate = array($array1,$array2,$array3); //In this case would be array("20","40","0") 

Так что я хочу, что, когда есть переменная, которая имеет нулевое значение, 0 или пусто, то не делает часть массива. Решение это перейти от:

array("20","40","0") 

к:

array("20","40") 

Есть ли вообще это делать? Извините за мой плохой английский. Благодарю вас: D.

ответ

8

Использование $arraydate = array_filter($arraydate);

Согласно manual, если нет обратного вызова не задан, то будут удалены все элементы, равные ложь.

+0

Большое вам спасибо. Исправлена ​​проблема –

0

Wrong Воображение это никогда не приведет к массиву ("20", "40", "0"), было бы вместо
массив ("20", "40", "")

И даже вы получаете это, то используйте функцию array_filter для фильтрации значения

+0

Это то, что я хотел бы быть возможным –

1

Вы действительно просмотрели Руководство по PHP? Они обеспечивают однострочное решение с array_filter ...

$newAray = array_filter($arraydate); 
+0

Работает очень хорошо, спасибо! –

Смежные вопросы