认为我很想知道我要做什么。如果性别变量为M,则显示男性图像。我尝试了一些东西,例如删除=,但我没有取得任何成功。
我完全错了吗?
if ($gender == M){
<img src='images/male.png' width='45px' height'45px'>
}else{
($gender == F){
<img src='images/female.png' width='45px' height'45px'>
}else{
($gender == HIDE){
<img src='images/uni.png' width='45px' height'45px'>
}
答案 0 :(得分:2)
除非这些是常量,否则您需要将字符串封装在引号中:
if($gender == 'M') {
?>
<img src="images/male.png" width="45" height="45" />
<?php
} else {
另外,请注意(你的代码给出语法错误)你如何混合html和php。你应该使用CSS来设置样式,而不是内联属性(不推荐使用)
答案 1 :(得分:1)
除非你为M
,F
和HIDE
设置了php常量定义,否则你需要将它们变成字符串。
常数:http://php.net/manual/en/function.define.php
还记得,php中没有enumeratios。
答案 2 :(得分:1)
您还可以尝试使用以下开关语句:
switch(strtoupper($gender))
{
case 'M': $gender_img = 'male'; break;
case 'F': $gender_img = 'female'; break;
case 'HIDE': $gender_img = 'uni'; break;
default: $gender_img = 'uni'; break;
}
echo '<img src="images/'.$gender_img.'.png" width="45px" height="45px">';
答案 3 :(得分:0)
if($ gender ==='M'){
// or to make sure $gender is uppercase:
if (strtoupper($gender) === 'M'){
...
}
elseif { ...
并且,你的第一个“其他”应该是一个elseif
答案 4 :(得分:0)
我会内联(像老板)
<img src="imgs/<?=($gender=="m"?"male.jpg":($gender=="f"?"female.jpg":"uni.jpg"))?>" />