获取用于比较的 concrete5 整数属性值
Getting concrete5 integer attribute value for comparison
我正在使用系统 (concrete5) 就地编辑一些 php。我正在尝试以下操作:
use Concrete\Core\User\UserInfo;
$ui = UserInfo::getByID(3);
$answer = $ui->getAttribute('Q1');
if ($answer >= 5)
print "True";
当我通过插入 print $answer
在 $answer
上插入支票时,它 returns 6(这是用户持有的属性数据)。但是,if
的计算结果不为真。和想法为什么?我必须排版输出什么的吗?
编辑:
我将类型转换为 int,结果相同。
如果 $answer 是一个对象,定义了 __toString 函数,那么那里描述的所有事情都会发生。尝试这样的事情:
use Concrete\Core\User\UserInfo;
$ui = UserInfo::getByID(3);
$answer = $ui->getAttribute('Q1');
$answer = $answer.'';
if ($answer >= '5')
print "True";
选择的答案不是正确的方法。
使用$ui->getAttribute('Q1','display')
.
use Concrete\Core\User\UserInfo;
$ui = UserInfo::getByID(3);
$answer = $ui->getAttribute('Q1','display');
if ($answer >= 5)
print "True";
查看 concrete5 文档以了解有关属性的更多信息-
https://documentation.concrete5.org/developers/attributes/attribute-value-objects-and-output-formatting
我正在使用系统 (concrete5) 就地编辑一些 php。我正在尝试以下操作:
use Concrete\Core\User\UserInfo;
$ui = UserInfo::getByID(3);
$answer = $ui->getAttribute('Q1');
if ($answer >= 5)
print "True";
当我通过插入 print $answer
在 $answer
上插入支票时,它 returns 6(这是用户持有的属性数据)。但是,if
的计算结果不为真。和想法为什么?我必须排版输出什么的吗?
编辑: 我将类型转换为 int,结果相同。
如果 $answer 是一个对象,定义了 __toString 函数,那么那里描述的所有事情都会发生。尝试这样的事情:
use Concrete\Core\User\UserInfo;
$ui = UserInfo::getByID(3);
$answer = $ui->getAttribute('Q1');
$answer = $answer.'';
if ($answer >= '5')
print "True";
选择的答案不是正确的方法。
使用$ui->getAttribute('Q1','display')
.
use Concrete\Core\User\UserInfo;
$ui = UserInfo::getByID(3);
$answer = $ui->getAttribute('Q1','display');
if ($answer >= 5)
print "True";
查看 concrete5 文档以了解有关属性的更多信息- https://documentation.concrete5.org/developers/attributes/attribute-value-objects-and-output-formatting