[英]IF/ELSE to echo image in PHP
我正在尝试根据IF / ELSE语句的结果回显特定的图像,但是我无法完全理解IF / ELSE语句的措辞。 我是PHP的相对新手,所以我敢肯定这只是某处代码中的一个小错误,但是如果有人可以提供任何帮助,我将不胜感激!
我目前处于以下阶段:
<?php
$fresh = if ($reviews['reviews']['freshness']) = 'fresh' {
echo '<img src="assets/images/fresh.png" class="rating" title="Fresh" alt="Fresh" />';
} else {
echo '<img src="assets/images/rotten.png" class="rating" title="Rotten" alt="Rotten" />';
}
?>
<?php
foreach($reviews['reviews'] as $rv){
if ($tmp++ < 10);
echo $fresh;
echo '<li>' . $rv['quote'] . '</li>';
}
?>
谢谢!
您不能将if语句分配给值。
if ($reviews['reviews']['freshness'] == 'fresh') {
echo '<img src="assets/images/fresh.png" class="rating" title="Fresh" alt="Fresh"/>';
} else {
echo '<img src="assets/images/rotten.png" class="rating" title="Rotten" alt="Rotten" />';
}
另一种更漂亮的方式是:
if ($reviews['reviews']['freshness'] == 'fresh') {
$image = "fresh";
}
else {
$image = "rotten";
}
echo '<img src="assets/images/' . $image . '.png" class="rating" title="Rotten" alt="Rotten" />';
是的,您的代码非常错误,但是我可以看到您正在尝试执行的操作。
<?php
if ($reviews['reviews']['freshness'] == 'fresh') {
$image = '<img src="assets/images/fresh.png" class="rating" title="Fresh" alt="Fresh" />';
} else {
$image = '<img src="assets/images/rotten.png" class="rating" title="Rotten" alt="Rotten" />';
}
?>
您的主要错误是括号的位置不正确,并且IF语句未在PHP中返回值。
就是说,我不确定为什么要在下面执行foreach循环,所以我没有涉及。 也许您可以进一步解释您要达到的目标?
这可能会帮助您朝正确的方向发展:
<?php
if ($reviews['reviews']['freshness'] == 'fresh'){
echo '<img src="assets/images/fresh.png" class="rating" title="Fresh" alt="Fresh" />';
}
else{
echo '<img src="assets/images/rotten.png" class="rating" title="Rotten" alt="Rotten" />';
}
while($reviews['reviews']){
for($i=0;i<10;i++{
echo // What do you actually want to print out?
echo '<li>'.$reviews['reviews']['quote'].'</li>';
}
}
?>
我想这就是你想要的...
<?php
for ($tmp = 0; $tmp < 10 && $tmp < count($reviews); $tmp++) {
if ($reviews[$tmp]['freshness'] == 'fresh') {
echo '<img src="assets/images/fresh.png" class="rating" title="Fresh" alt="Fresh" />';
} else {
echo '<img src="assets/images/rotten.png" class="rating" title="Rotten" alt="Rotten" />';
}
echo '<li>' . $reviews[$tmp]['quote'] . '</li>';
}
?>
ETA:查看了API,并修复了一些问题。
ETAx2:对于那些希望从API返回JSON示例的人...
{
"total": 41,
"reviews": [
{
"critic": "Joe Baltake",
"date": "2010-07-27",
"freshness": "fresh",
"publication": "Passionate Moviegoer",
"quote": "'Toy Story 3': Alternately affecting, hilarious and heartbreaking and the most original prison-escape movie ever made",
"links": {
"review": "http://thepassionatemoviegoer.blogspot.com/2010/07/perfectimperfect.html"
}
},
{
"critic": "Rafer Guzman",
"date": "2010-07-06",
"freshness": "fresh",
"publication": "Newsday",
"quote": "It's sadder and scarier than its predecessors, but it also may be the most important chapter in the tale.",
"links": {
"review": "http://www.newsday.com/entertainment/movies/toy-story-3-andy-grows-up-1.2028598"
}
},
{
"critic": "Richard Roeper",
"date": "2010-06-30",
"original_score": "5/5",
"freshness": "fresh",
"publication": "Richard Roeper.com",
"quote": "The best movie of the year so far.",
"links": {
"review": "http://www.richardroeper.com/reviews/toystory3.aspx"
}
},
...
通过反复试验,我找到了以下解决方案。
<?php
$ID=$row_RecordsetLast['ID'];
$image = '../../pics/'.$ID.'.jpg';
if (file_exists($image)) {
echo '<img src="../../pics/' . $ID . '.jpg" alt="" width="110" height="161" />';
} else {
echo '<img src="guest.png" alt="" width="110" height="161" />';
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.