2014-12-17 3 views
-1

У меня есть этот массив я хочу удалитьУдалить конкретный символ из массива PHP

array (

     [79] => 0.0 
     [80] => 0.0 
     [81] => 0.0 
     [82] => 0.0 
     [83] => 0.0 
     [84] => 0.0 
     [85] => 0.0 
     [86] => 0.0 
     [87] => 0.0 
     [88] => 0.0 
     [89] => 0.0 
     [90] => 2.0 
     [91] => 13.0 
     [92] => 17.0 
     [93] => 0.0 
     [94] => 0.0 
     [95] => 0.0 
     [96] => 0.0 
     [97] => 0.0 
     [98] => 0.0 
     [99] => 0.0 
     [100] => 3.0 

    ) 

я хочу удалить 0.0, как можно сделать это легко, пожалуйста, помогите мне я хочу сделать это с помощью с помощью петли

+0

Попробуйте 'array_filter()' –

ответ

3

Вы можете использовать функцию «array_filter» от PHP для фильтрации пустой, пустой строки или значения 0.0

$array = array_filter($array); 
0

Я бы с Benz ответ выше

Но другой вариант может быть array_diff:

$remove = array(0.0); 
$filtered = array_diff($source_array, $remove); 
0
function is_zero($string) { 
    $remove = array("0", "0.0"); 
    if (in_array($string, $remove)) { 
     return FALSE; 
    } 
    return TRUE; 
} 

$clean_array = array_filter($your_array, "is_zero"); 

Это удалит все, что 0 или 0,0. Может быть лучше использовать сравнение произнесения (INT/поплавка), чем проверка строки ...

Обзор http://php.net/manual/en/function.array-filter.php для infoamtion на array_filter()

0

Вы можете попробовать со следующим:

<?php 

$array=array('0.0','0.0','0.0','0.0','0.0','0.0','0.0','0.0','2.0','13.0','17.0','3.0'); 

function myFilter($string) { 
    return strpos($string, '0.0') === false; 
} 

$newArray = array_filter($array, 'myFilter'); 

echo '<pre>'; 
print_r($newArray); 
echo '<pre>'; 

?>