2017-10-12 10 views
0

以下のコードを使用して配列内の文字列を検索し、対応する応答コードを出力します。しかし、コードの下に常にすべての場合(すなわち、000,00,0)でApproved1を印刷配列内の要素の正確な位置

$resp_desc=["Approved1","Approved","Fail"]; 
$resp_table=["000","00","0"]; 
$description=array_search("0",array_keys($resp_table)); 
$desc1=$resp_desc[$description]; 
echo $desc1; 

は、上記の問題に案内してください。あなたは配列のキーではない配列の値で検索している

+1

を持っているので、array_searchでtrueに制限する設定されていますか? – madalinivascu

+1

完全にはっきりしているわけではありませんが、3番目のパラメータを 'array_search'に' true'として渡したいと思うかもしれません。さもなければ、これらの値はすべて緩やかな比較を行うため、等しいと見なされます。 – iainn

答えて

3

、あなたがarray_keysない値で検索しているなぜあなたは1つの結果しか

$description=array_search("0",$resp_table,true); 
+1

array_search( "0"、$ resp_table);も '0'を返すので、第3引数' exact'も重要です。 – OptimusCrime

関連する問題