2016-04-07 7 views
2

Ich habe derzeit eine Variable, die das folgende Array enthält. Jeder Teil des Arrays wird vom Benutzer gesendet. Wie würde ich prüfen, ob jeder Teil des Arrays ein ganzzahliger Wert ist und ob dieser Teil des Arrays dann nicht gelöscht wird?Überprüfen, ob jeder Teil des Arrays als numerisch

Array ([0] => 3 [1] => 4 [2] => 17 [3] => 5 [4] => 6 [5] => 11 [6] => 7 [7 ] => 8 [8] => 9 [9] => 15 [10] => 16 [11] => 18 [12] => 10 [13] => 12 [14] => 13 [15] = > 14)

Ich speichere das Array in $ Foren und ich habe versucht array_map ("ctype_digit", $ Foren);

+0

$ Foren ist, wo ich das Array speichern und ich habe versucht array_map ("ctype_digit", $ Foren); – Paradigm

+3

Verwenden Sie 'array_filter' – callback

+0

is_numeric ($ num) mit array_filter – iameven

Antwort

6

können Sie array_filter verwenden Sie das Ergebnis-Array mit 'is_numeric' Parameter zu erhalten:

$yourArray = Array([0] => 3 [1] => 4 [2] => 17 [3] => 5 [4] => 6 [5] => 11 [6] => 7 [7] => 8 [8] => 9 [9] => 15 [10] => 16 [11] => 18 [12] => 10 [13] => 12 [14] => 13 [15] => 14); 
$filtered = array_filter($yourArray, 'is_numeric'); 
1

einfach

<?php 

$a = [1,2,3,4,5,6,'test',7,8,9]; 

foreach($a as $key => $value) { 
    if(!is_int($value)) { 
     unset($a[$key]); 
    } 
} 
0

Schleife durch das Array und überprüfen Wert Array numerisch ist oder nicht, wenn nicht dann diesen Schlüssel löschen .

foreach($yourArray as $key => $value) 
{ 
    if (!is_numeric($value)) 
    { 
     unset($yourArray[$key]); 
    } 
} 
2

Verwenden array_filter mit is_int

$filtered = array_filter($array, 'is_int'); 

können Sie wie folgt verwenden. Einfach.

Verwandte Themen