我正在尝试创建xml站点地图我的数据库中有一个列album_image。在开始的一天,我没有上传专辑图片和列商店'0'作为价值多年前我开始上传专辑图像。现在我想为它创建站点地图。如果album_image == 0显示静态图像,则显示相册iamge。如何在$ xml。=
中使用if statment$xml .= '<image:image>';
$xml .= '<image:loc>'.SITE_URL. if($row->album_image == '0'){'images/video_icon.png'}else{'media/'.$row->cat_id.'/images/'.$row->album_image.'}</image:loc>';
$xml .= '<image:caption>'.$row->album_name.'</image:caption>';
$xml .= '</image:image>';
我收到此错误“解析错误:语法错误,第15行的E:\ wamp \ www \ site \ sitemap-album.php中的意外T_IF”
答案 0 :(得分:1)
您需要将if条件分开:
$xml .= '<image:image>';
$xml .= '<image:loc>'.SITE_URL;
if($row->album_image == '0') {
$xml .= 'images/video_icon.png';
} else {
$xml .= 'media/'.$row->cat_id.'/images/'.$row->album_image;
}
$xml .= '</image:loc>';
$xml .= '<image:caption>'.$row->album_name.'</image:caption>';
$xml .= '</image:image>';
答案 1 :(得分:0)
你也可以使用$ xml。=&#39;&#39;;
$xml .= '<image:loc>'.SITE_URL. ($row->album_image == '0')?'images/video_icon.png':'media/'.$row->cat_id.'/images/'.$row->album_image.'</image:loc>';
$xml .= '<image:caption>'.$row->album_name.'</image:caption>';
$xml .= '</image:image>';
答案 2 :(得分:0)
完整的代码如下。现在我正在考虑&#34;解析错误:语法错误,意外&#39; =&#39;在&#34;
$sql = "SELECT * from albums LIMIT 0, 1";
$query = mysql_query($sql);
if(mysql_num_rows($query) > 0){
while($row = mysql_fetch_object($query)){
$xml .= '<url>';
$xml .= '<loc>'.SITE_URL.$row->album_url.'-album-1</loc>';
$xml .= '</url>';
$xml .= '<image:image>';
$xml .= '<image:loc>'.SITE_URL;
if($row->album_image == '0') {
$xml . = 'images/video_icon.png';
} else {
$xml .= 'media/'.$row->cat_id.'/images/'.$row->album_image.';
}
$xml .= '</image:loc>';
$xml .= '<image:caption>'.$row->album_name.'</image:caption>';
$xml .= '</image:image>';
}
}
$xml .= '</urlset>';
echo $xml;
答案 3 :(得分:0)
每个PHP语句必须以半冒号(;)
结束。
它有一个例外:文件中的最后一个语句。
echo
语句在某些代码需要之前的语句关闭之后。
连接可以起作用,但是,对于echo
,关闭前一个语句是唯一的选择。
使用三元运算符并将结果存储在变量中。
使用该变量使代码可读。
完整代码:
$videoImage = ($row->album_image == '0') ? 'images/video_icon.png' : 'media/'.$row->cat_id.'/images/'.$row->album_image;
$xml .= '<image:image>';
$xml .= '<image:loc>'.SITE_URL . $videoImage . '</image:loc>';
$xml .= '<image:caption>'.$row->album_name.'</image:caption>';
$xml .= '</image:image>';