在PHP中将未知类型与字符串进行比较
我对PHP和word press的世界完全陌生 我需要将一个字符串与已定义的函数进行比较,该函数返回一些值,但不是在PHP中将未知类型与字符串进行比较,php,wordpress,Php,Wordpress,我对PHP和word press的世界完全陌生 我需要将一个字符串与已定义的函数进行比较,该函数返回一些值,但不是null 当我试图打印带有回音的函数时,它会打印一些文本,但当我试图使用get\u type(function())获取返回值的类型时,它会返回Null 已知字符串和打印文本都是相同的,但仍然不满足我的if条件 我所需要做的就是将已知字符串与该方法返回的值进行比较 编辑: 我试图将其与字符串进行比较的方法是_permalink() 此方法满足is_null()方法,但它在调用时打印u
null
当我试图打印
带有回音的函数时,它会打印一些文本,但当我试图使用get\u type(function())
获取返回值的类型时,它会返回Null
已知字符串和打印文本都是相同的,但仍然不满足我的if条件
我所需要做的就是将已知字符串与该方法返回的值进行比较
编辑:
我试图将其与字符串进行比较的方法是_permalink()
此方法满足is_null()方法,但它在调用时打印url。可以尝试gettype()吗
$your_string = "something";
$returned_method_value = your_function();
if($your_string === $returned_method_value){ //=== for type check, if you don't want to know the type use ==
//Do something
}
没有下划线
如果你检查相同或不同的类型,那么你可以按照博诺说的去做
if( $type1 === $type2)
{
//do something
}
此外,发布一些代码来向我们展示会非常有帮助。除非我们能看到代码,否则我们无法确定哪里出了问题。正如Anthory Saldana Jr.所说,使用gettype()
而不是get\u type()
如果我理解正确,这就是你想要的:
function testFunction($input) {
return $input;
}
echo gettype(testFunction(1))."<br>";
echo gettype(testFunction("a"))."<br>";
/* Prints:
* integer
* string
*/
function testFunction($input){
返回$input;
}
echo gettype(testFunction(1))。“
”;
echo gettype(testFunction(“a”))。“
”;
/*印刷品:
*整数
*串
*/
这里有一个Phidle来演示:准确地发布您的if语句。旁注:var_dump()是一个非常有用的函数。。。告诉您类型、值,如果是字符串,则告诉您长度。这与WordPress无关。使用var_dump,获取变量的类型,并强制转换变量。这在技术上是正确的,但看起来OP的问题有一些不清楚的地方。即使是松散的比较也会使if条件返回false
,那么严格的比较会使其返回true
?