0

我有一个数组如下

<?php
$args = array(
"post_author_url" => "no",
"thumbnail_custom_field" => "image",
"post_include" => get_user_meta($userID, 'member_owner', true),
"layout_mode" => "multi_column","layout_num_cols" => "3");
special_recent_posts($args);
?>

这很好用,但我想对其中一个项目设置条件

"thumbnail_custom_field" => "image",

"image"可能不存在,所以我需要一个后备,所以它显示正常。

例如:

<?php if ( get_post_meta($post->ID, 'image', true)) {
echo 'image'
} else { 
echo 'image-fallback'
?>

image作为这个 IF 语句的结果,我怎样才能在数组中设置标签?我是否在数组之前将其设为字符串?还是我将 IF 语句直接放入数组中?寻找一些专家指导..谢谢

4

1 回答 1

1

尝试以下操作:

<?php
$args = array(
"post_author_url" => "no",
"thumbnail_custom_field" => ((get_post_meta($post->ID, 'image', true))?'image':'image-fallback'),
"post_include" => get_user_meta($userID, 'member_owner', true),
"layout_mode" => "multi_column","layout_num_cols" => "3");
special_recent_posts($args);
?>

表达式 (expr1) ? (expr2) : (expr3) 如果 expr1 的计算结果为 TRUE,则计算为 expr2,如果 expr1 的计算结果为 FALSE,则计算 expr3。查找“三元运算符”。

于 2012-10-05T08:40:50.933 回答