ホームページ >バックエンド開発 >PHPチュートリアル >in_array()
//既存の ID セット $set['old_id'] とフロントから送信された ID セット $set['new_id'] を比較します。
リーリー私が渡した値:
123,1233
print_r($set_old_id):
Array ( [0] => Array ( [ID] => 1 ) [1] => Array ( [ID] => 12 ) [2] => Array ( [ID] => 123 ) [3] => 配列 ( [ID] => 1234 ) [4] => 配列 ( [ID] => 12345 )
印刷:
ID: 123 が存在します
配列 ( [0] => 123 [1] => 1233 )
質問: print_r($checkout); がまだ 123 なのはなぜですか
明らかにスクリーニングしました。
神様が知らせてくれますように。 。ありがとうございます
//既存の ID セット $set['old_id'] とフロントから送信された ID セット $set['new_id'] を比較します。
リーリー私が渡した値:
123,1233
print_r($set_old_id):
Array ( [0] => Array ( [ID] => 1 ) [1] => Array ( [ID] => 12 ) [2] => Array ( [ID] => 123 ) [3] => 配列 ( [ID] => 1234 ) [4] => 配列 ( [ID] => 12345 )
印刷:
ID: 123 が存在します
配列 ( [0] => 123 [1] => 1233 )
質問: print_r($checkout); がまだ 123 なのはなぜですか
明らかにスクリーニングしました。
神様が教えてくださると幸いです。 。ありがとうございます
リーリー
これは in_array を正しく使用する例です。具体的な問題については自分で考えてください。コードを見ただけでは $set['old_id'] がどのようなものであるかわかりません。
まず最初に$set_old_id
格式是不对的,另外在使用 in_array
この機能を使用する際には、いくつかの「奇妙な動作」に注意する必要があります。この機能を使用する際に注意する必要があることは、マニュアルに多くの例が記載されています。 in_array。
形式が正しい場合、つまり ID が抽出され、[1,2,3,4] などの 1 次元配列に形成されます。次に、in_array 関数を使用するときは、ここで 3 番目のパラメーターを使用する必要があります。これは厳密な一致を意味します (型と値がまったく同じである必要があります)。例: $set_old_id
リーリー
などの他の方法も使用できます。PHP マニュアルには多くのケースが記載されています。 isset()
を使用する過程でだまされたことがあり、それをここに「PHPのいくつかの「トラップ」」に記録しました。