php - 基于 if 语句定义 $variable
问题描述
我有下面的 PHP 代码,它从 cURL 函数中提取请求,我留下了以下参数。
$media_url = $entry['media_url'];
$permalink = $entry['permalink'];
$media_type = $entry['media_type'];
$thumbnail_url = $entry['thumbnail_url'];
if (!empty($thumbnail_url)) {
/* Get the video thumbnail image info */
$info = getimagesize($thumbnail_url);
var_dump($info);
} else {
/* Get the image info */
$info = getimagesize($media_url);
var_dump($info);
}
我正在使用 html div 类在我的网站上定义输出,但我不知道如何定位一个或另一个变量。
<div class="tweet-right" style="width: 100%;">
<a href="<?= $permalink; ?>" target="_blank"><img class="tw-text instagram-content tw-image" style="width: <?= $width ?>; height: <?= $newHeight ?>;" src="<?= $media_url; ?>" /></a>
</div>
在上面的 html 元素中,我该如何执行以下操作:
如果$thumbnail_url
不为空,则使用 that 作为src=
,否则使用 the$media_url
作为src=
。
解决方案
您可以使用“猫王运算符”:
src="<?= $thumbnail_url ?: $media_url; ?>"
它只是一个省略了中间部分的三元表达式。如果它是真的,这样的表达式将评估左侧,否则评估右侧。
如果这些变量中的任何一个可能是未定义的,而不仅仅是具有空值,则可以使用 null 合并运算符来代替未定义的变量通知。
src="<?= $thumbnail_url ?? $media_url ?? ''; ?>"
推荐阅读
- vba - 根据excel VBA中的条件突出显示值
- junit - 无法将 Cucumber 功能粘合到步骤定义
- jquery - jQuery UI 如何在拖动的元素上添加点击
- python - 在网页抓取时,当尝试计算页面上的项目数量时,即使有超过 1 个,我也会得到 1
- java - Java - 在 LinkedList 中查找最近的节点
- python - collectd 无法写入 influxDB “无法调度 rabbitmq_default。找不到异常数据集 publish_out_details”
- sql - Wordpress 数据库问题 - 菜单未正确保存,媒体缩略图未显示
- ruby-on-rails - Rails 与我的关系出现问题
- javascript - React-Emotion:将 defaultProps 传递给组件重用
- sql - SQL Server 存储过程获取插入的 ID 并在下一个查询中使用它