0

次のかなり単純なコードがあります。ここでは、特定の値が配列に存在するかどうかを判断する必要があります。

$testvalue = $_GET['testvalue']; // 4
$list = '3, 4, 5';
$array = array($list);

if (in_array($testvalue, $array)) { // Code if found } else { // Code if not found }

数値 4 が配列内にあることは明らかですが、コードは else 括弧内のコードを返します。私は何を間違えましたか?

4

3 に答える 3

3

3 行目を変更します。

$array = array_map('trim', explode(',',$list));
于 2012-08-13T20:10:05.223 に答える
3

$arrayここは:

$array = array('3, 4, 5');

これは次と同じではありません:

$array = array(3, 4, 5);

したがって、この配列の作成方法を修正してください。文字列から作成しないでください。

于 2012-08-13T20:07:57.407 に答える
2

配列には、 string という値が 1 つだけ含まれています3, 4, 5

CodePadの例を参照してください。

文字列を配列に変換する場合は、次を使用できます。

$array = explode(', ', $list);

コンマの後ろにスペースを追加しましたが、より安全な方法は、コンマだけを使用してからすべての値を削除することです。

于 2012-08-13T20:07:28.803 に答える