3

SQL 結果列から INT を取得することによって生成される 1 から 14 までの数値を含む通常の配列があります。

別のクエリを使用して、別の INT を返しています。

配列でこの INT を探しています。

$key = array_search("$roomNb", $freeRooms);

ただし、このキーをエコーし​​ようとすると何も表示されません。それは空です。

ループを使用して $freeRooms をエコーすると、次のようになります。

1
2
3
4
5
6
7
8
9
10
11
12
14

$roomNb をエコーすると、

5

だから、なぜ私は何も得られないのか理解できません。4 no のキーを期待する必要がありますか? 何が原因でしょうか?

4

2 に答える 2

1

最も可能性$keyが高いのはfalse、echo に送信されたときに何も表示されないものです。代わりにvar_dump、の値を決定するために使用する必要があります$key

Falsearray_search針が見つからないときから返されます

Nullarray_search渡したパラメータが無効な場合にのみ返されます

http://php.net/manual/en/function.array-search.php

http://writecodeonline.com/php/を使用して、このコードをここでテストします。

echo false;
echo null;
var_dump(false);
var_dump(null);

$code = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14);
$roomNb = 5;

var_dump(array_search("$roomNb", $code));

うまくいくはずです。 echo何も出力しません。var_dumpものを出力します。そして鍵は4にあります。

于 2013-08-30T23:07:44.120 に答える