对未正确运行的null变量使用if语句

时间:2015-07-31 01:05:24

标签: php

我有一个变量,其值为NULL我试图只显示一个按钮,如果它们的ID不匹配变量或者变量不是null,这里是我的脚本:

<?php if($this->id != Session::get('id') || $this->id != NULL): ?>
      <a href="<?php echo Config::get('URL'); ?>messages/compose/<?php echo System::escape($this->user->user_id); ?>" class="btn btn-block btn-success"><i class="fa fa-envelope-alt"></i>Send message</a>
<?php endif; ?>

无论如何,href仍然显示,我尝试了is_nullempty!isset(),我var_dump变量,后面带有{{ 1}}因此它不应该显示一个href,但是低并且看到它仍然显示它。

2 个答案:

答案 0 :(得分:0)

我认为你想要而不是或

public static Bitmap createScaledBitmap(Bitmap bitmap, int reqWidth) {
    if (bitmap.getWidth() > reqWidth) {
        int height = reqWidth / bitmap.getWidth() * bitmap.getHeight();

        Bitmap scaledBitmap = Bitmap.createScaledBitmap(bitmap, reqWidth, height, true);
        bitmap.recycle();
        return scaledBitmap;
    }
    return bitmap;
}

答案 1 :(得分:0)

我使用&&代替||

解决了这个问题
<?php if($this->id != Session::get('id') && $this->id != NULL): ?>
      <a href="<?php echo Config::get('URL'); ?>messages/compose/<?php echo System::escape($this->user->user_id); ?>" class="btn btn-block btn-success"><i class="fa fa-envelope-alt"></i>Send message</a>
<?php endif; ?>

我不想接受简短回答,所以这里有关于ANDOR陈述的一些信息

AND和OR运算符

  

AND运算符显示第一个条件和第一个条件的记录   第二个条件是真的。

     

如果是第一个条件,则OR运算符显示记录   第二个条件是真的。

AND运算符示例

  

以下SQL语句选择来自该国家/地区的所有客户   “德国”和城市“柏林”,在“客户”表中:

SELECT * FROM Customers
WHERE Country='Germany'
AND City='Berlin';

OR运算符示例

  

以下SQL语句选择来自该城市的所有客户   “柏林”或“慕尼黑”,在“客户”表中:

SELECT * FROM Customers
WHERE City='Berlin'
OR City='München';

合并AND和OR语句

  

您还可以组合AND和OR(使用括号形成复数   表达式)。

     

以下SQL语句选择来自该国家/地区的所有客户   “德国”和城市必须等于“柏林”或“慕尼黑”,在   “客户”表:

SELECT * FROM Customers
    WHERE Country='Germany'
    AND (City='Berlin' OR City='München');