Bonjour,
J'ai un petit souci avec la fonction in_array().
Tout d'abord voici le tableau $T:
Array ( [0] => 0 [1] => 20004 [2] => 20005 [3] => 20101 [4] => 20107 [5] => 20108 [6] => 20109 [7] => 21007 [8] => 22102 [9] => 22103 [10] => 22202 [11] => 22206 [12] => 22207 [13] => 22307 [14] => 22311 [15] => 22312 [16] => 22403 [17] => 22503 [18] => 22705 [19] => 22706 [20] => 22707 [21] => 22708 [22] => 23008 [23] => 23009 [24] => 23010 [25] => 23011 [26] => 23105 [27] => 23106 [28] => 23203 [29] => 23302 [30] => 23304 [31] => 23406 [32] => 23407 [33] => 23409 [34] => 23410 [35] => 24002 [36] => 24004 [37] => 24005 [38] => 25001 [39] => 25003 [40] => 25004 [41] => 25005 [42] => 25204 [43] => 25205 [44] => 25206 [45] => 25207 [46] => 25209 [47] => 25401 [48] => 25407 [49] => 25408 [50] => 25508 [51] => 25509 [52] => 25511 [53] => 25512 [54] => 25514 [55] => 31101 [56] => 31209 [57] => 31305 [58] => 31306 [59] => 31406 [60] => 32103 [61] => 32204 [62] => 32206 [63] => 32207 [64] => 32318 [65] => 32320 [66] => 32321 [67] => 32322 [68] => 32323 [69] => 32324 [70] => 32406 [71] => 33102 [72] => 33104 [73] => 33105 [74] => 33203 [75] => 33414 [76] => 33415 [77] => 33602 [78] => 34301 [79] => 34302 )
Celui-ci me sert à vérifier une données issue de la base. J'effectue une requete de type select et je récupère une données $data. Puis je vérifie à chaque itération que cette donnée $data est présente dans le tableau $T.
Pour vérifier la valeur de la fonction in_array je lance le code suivant à chaque itération:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
echo"\$data = $data<br>";
print_r($T);
echo"<br>";
echo"in_array(\$data = ,\$T) = ".in_array($data = ,$T);
echo"<br>";
Voici le début de l'affichage (3 premières itérations):
$data = 32323
Array ( [0] => 0 [1] => 20004 [2] => 20005 [3] => 20101 [4] => 20107 [5] => 20108 [6] => 20109 [7] => 21007 [8] => 22102 [9] => 22103 [10] => 22202 [11] => 22206 [12] => 22207 [13] => 22307 [14] => 22311 [15] => 22312 [16] => 22403 [17] => 22503 [18] => 22705 [19] => 22706 [20] => 22707 [21] => 22708 [22] => 23008 [23] => 23009 [24] => 23010 [25] => 23011 [26] => 23105 [27] => 23106 [28] => 23203 [29] => 23302 [30] => 23304 [31] => 23406 [32] => 23407 [33] => 23409 [34] => 23410 [35] => 24002 [36] => 24004 [37] => 24005 [38] => 25001 [39] => 25003 [40] => 25004 [41] => 25005 [42] => 25204 [43] => 25205 [44] => 25206 [45] => 25207 [46] => 25209 [47] => 25401 [48] => 25407 [49] => 25408 [50] => 25508 [51] => 25509 [52] => 25511 [53] => 25512 [54] => 25514 [55] => 31101 [56] => 31209 [57] => 31305 [58] => 31306 [59] => 31406 [60] => 32103 [61] => 32204 [62] => 32206 [63] => 32207 [64] => 32318 [65] => 32320 [66] => 32321 [67] => 32322 [68] => 32323 [69] => 32324 [70] => 32406 [71] => 33102 [72] => 33104 [73] => 33105 [74] => 33203 [75] => 33414 [76] => 33415 [77] => 33602 [78] => 34301 [79] => 34302 )
in_array($data ,$T) =
$data = 33107
Array ( [0] => 0 [1] => 20004 [2] => 20005 [3] => 20101 [4] => 20107 [5] => 20108 [6] => 20109 [7] => 21007 [8] => 22102 [9] => 22103 [10] => 22202 [11] => 22206 [12] => 22207 [13] => 22307 [14] => 22311 [15] => 22312 [16] => 22403 [17] => 22503 [18] => 22705 [19] => 22706 [20] => 22707 [21] => 22708 [22] => 23008 [23] => 23009 [24] => 23010 [25] => 23011 [26] => 23105 [27] => 23106 [28] => 23203 [29] => 23302 [30] => 23304 [31] => 23406 [32] => 23407 [33] => 23409 [34] => 23410 [35] => 24002 [36] => 24004 [37] => 24005 [38] => 25001 [39] => 25003 [40] => 25004 [41] => 25005 [42] => 25204 [43] => 25205 [44] => 25206 [45] => 25207 [46] => 25209 [47] => 25401 [48] => 25407 [49] => 25408 [50] => 25508 [51] => 25509 [52] => 25511 [53] => 25512 [54] => 25514 [55] => 31101 [56] => 31209 [57] => 31305 [58] => 31306 [59] => 31406 [60] => 32103 [61] => 32204 [62] => 32206 [63] => 32207 [64] => 32318 [65] => 32320 [66] => 32321 [67] => 32322 [68] => 32323 [69] => 32324 [70] => 32406 [71] => 33102 [72] => 33104 [73] => 33105 [74] => 33203 [75] => 33414 [76] => 33415 [77] => 33602 [78] => 34301 [79] => 34302 )
in_array($data ,$T) =
$data = 33103
Array ( [0] => 0 [1] => 20004 [2] => 20005 [3] => 20101 [4] => 20107 [5] => 20108 [6] => 20109 [7] => 21007 [8] => 22102 [9] => 22103 [10] => 22202 [11] => 22206 [12] => 22207 [13] => 22307 [14] => 22311 [15] => 22312 [16] => 22403 [17] => 22503 [18] => 22705 [19] => 22706 [20] => 22707 [21] => 22708 [22] => 23008 [23] => 23009 [24] => 23010 [25] => 23011 [26] => 23105 [27] => 23106 [28] => 23203 [29] => 23302 [30] => 23304 [31] => 23406 [32] => 23407 [33] => 23409 [34] => 23410 [35] => 24002 [36] => 24004 [37] => 24005 [38] => 25001 [39] => 25003 [40] => 25004 [41] => 25005 [42] => 25204 [43] => 25205 [44] => 25206 [45] => 25207 [46] => 25209 [47] => 25401 [48] => 25407 [49] => 25408 [50] => 25508 [51] => 25509 [52] => 25511 [53] => 25512 [54] => 25514 [55] => 31101 [56] => 31209 [57] => 31305 [58] => 31306 [59] => 31406 [60] => 32103 [61] => 32204 [62] => 32206 [63] => 32207 [64] => 32318 [65] => 32320 [66] => 32321 [67] => 32322 [68] => 32323 [69] => 32324 [70] => 32406 [71] => 33102 [72] => 33104 [73] => 33105 [74] => 33203 [75] => 33414 [76] => 33415 [77] => 33602 [78] => 34301 [79] => 34302 )
Comme vous pouvez le constatez, la fonction in_array ne retourne aucun résultat alors que la 1ère valeur de $data est bien présente dans la liste des valeurs du tableau $T.
Pourriez-vous me dire pourquoi cette fonction ne retourne rien?

Merci

PS : in_array('32323 ' ,$T) retourne comme valeur : 1