我正在尝试显示链接到基于Joomla网站登录的用户的图像。
我使用的PHP代码如下:
<?php
$user = JFactory::getUser();
$username = $user->username;
echo '<img src="$user->picture" />'
;
?>
在我的测试和故障排除过程中,我在没有图像源标签的情况下进行了测试,并且从我的数据库表中收到了回调,标签为Images / LOGO.jpg,在我的前端显示为字符串。
当我再次使用Image源并用DB列中的相同字符串替换$ user-&gt;图片时,图片返回100%。
通过将代码保留在上面,页面加载成功,但不返回任何图像。
谢谢,
答案 0 :(得分:0)
单引号不打印var值,将其更改为
"<img src=\"$user->picture\" />"
答案 1 :(得分:0)
Bug非常明显.... private void getReminderCount() {
if (NOTIFY_SHOW != 0) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 10);
calendar.set(Calendar.MINUTE, 30);
calendar.set(Calendar.SECOND, 30);
Intent myIntent = new Intent(MainActivity.this, DiaryReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, myIntent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);
}
} catch (Exception e) {
e.printStackTrace();
}
}
您是否注意到上述代码段中有任何异常情况?
这是一个提示:试试这个:echo '<img src="$user->picture" />'
你得到了什么?
当然你把它全部拿回来了:VERBATIM - <?php $var="test"; echo '$var'; ?>
而不是预期的测试。
所以这里是Catch:
Any PHP中单引号内的变量不会扩展/评估为值...
您只需返回变量:逐字
而是这样:
$var
顺便说一下;在Joomla中,你可以得到像这样的用户头像:
<?php
$user = JFactory::getUser();
$username = $user->username;
// NOTICE THE DOUBLE QUOTES SURROUNDING THE "<img... />" TAG
// THOUGH NOT SO IMPORTANT, BUT NOTICE ALSO THE BRACES AROUND
// {$user->picture}
echo "<img src='{$user->picture}' />";
干杯&amp;祝你好运,伙计! ☝️✌️