Php 如果检查工作不正常,则进行检查

Php 如果检查工作不正常,则进行检查,php,if-statement,ternary-operator,Php,If Statement,Ternary Operator,我正试图根据用户的cookie打印出特定的图像 cookie可以有两个值之一:en或es。首先,我想检查一下这个cookie是否存在。如果是,则打印其值。否则,它应该打印出en 这是一个语言cookieen=英语,es=西班牙语。 我在/img/flags/文件夹中有两个标志,一个是英语标志,一个是西班牙语标志,它们的名称是en.gif和es.gif 这是我的密码: .gif”> 现在它只打印出一个空图像(没有文件名),不管我是否有cookie集:/img/flags/.gif 我做错了什么 我

我正试图根据用户的cookie打印出特定的图像

cookie可以有两个值之一:
en
es
。首先,我想检查一下这个cookie是否存在。如果是,则打印其值。否则,它应该打印出
en

这是一个语言cookie
en=英语
es=西班牙语
。 我在
/img/flags/
文件夹中有两个标志,一个是英语标志,一个是西班牙语标志,它们的名称是
en.gif
es.gif

这是我的密码:

.gif”>

现在它只打印出一个空图像(没有文件名),不管我是否有cookie集:
/img/flags/.gif

我做错了什么

我宁愿使用三元,因为它看起来更好。如果我做常规的If检查,它工作正常:

if (isset($_COOKIE['lang'])) {
  echo $_COOKIE['lang'];
} else {
  echo 'en';
}

您仍然需要响应三元结果:

<img src="/img/flags/<?php echo (isset($_COOKIE['lang']) ? $_COOKIE['lang'] : 'en') ?>.gif">
.gif>

为什么要投反对票?详细说明。评论+否决票的问题已经在Meta上讨论过了。许多人只是选择用DV继续前进。许多人提供建议。许多人试图为新手开辟道路。无论如何,你可能无法从那些对你的问题进行DV的人那里得到回应,因为他们可能已经离开了。