1

以下のコードは配列値を取ります。キーが存在する場合は、その値をエコーアウトする必要があります。3値のif / else部分は機能しますが、値が表示されません。なぜ機能しないのかを誰かが理解できますか?

$signup_errors['captcha'] = 'error-class';

echo(array_key_exists('captcha', $signup_errors)) ? $signup_errors['catcha'] : 'false';

また、falseをエコーアウトする場合、キーが存在しない場合は出力は必要ありません。falseという単語を削除するだけですか、それともコードに1つの値のみを表示させるための何かがありますか?

4

4 に答える 4

6

間違った場所に括弧が付いていると思います。

echo(array_key_exists('captcha', $signup_errors) ? $signup_errors['captcha'] : 'false');

また、のスペルを確認してください'captcha'

于 2009-09-03T04:44:42.437 に答える
3

タイプミスがあります。これ:

? $signup_errors['catcha'] :

これである必要があります:

? $signup_errors['captcha'] :

キャッチ->キャプチャ

于 2009-09-03T04:44:00.580 に答える
2

私はあなたが意味したと思います:

echo(array_key_exists('captcha', $signup_errors) ? $signup_errors['captcha'] : 'false');

または、キーが存在しないときに出力が必要ない場合は、三項演算子ではなく、「if」ステートメントを使用します。

if (array_key_exists('captcha', $signup_errors)) { echo $signup_errors['captcha']; }
于 2009-09-03T04:44:20.033 に答える
1

'captcha'のつづりを'catcha'と間違えました。

于 2009-09-03T04:44:14.073 に答える