这是一个基本的东西,我不敢相信我无法弄明白。我在模板文件中有一个php变量,称之为$author
。它由我正在使用的内容管理系统传入。我很确定这是一个字符串。它的价值是'John'
我认为这是一个字符串的原因是因为当我尝试
时<?php print gettype($author); ?>
打印'字符串'
我写的时候
<?php print $author; ?>
'John'被打印了 但是,当我写
时<?php $author == 'John' ? print 'yes' : print 'no'; ?>
打印'不'。等等......什么? 当我使用
时<?php print strcmp($author, 'John'); ?>
该函数返回-14!
我想我的问题是,这里发生了什么?我如何测试$author is equal to 'John'?
如果它很重要,内容管理系统是drupal,但我认为它更像是一般的php问题。
答案 0 :(得分:1)
强制它成为一个字符串。
<?php
$author = (string)$author;
$author == 'John' ? print 'yes' : print 'no';
?>