我想查找一个字符串是否包含在一个字符串中,但它总是如此。为什么总是这样试图找到一个字符串是否包含字符串
<?php
$test = 'ORDER BY `views`';
if(strpos($test,'views') !== true) echo 'true';
else echo 'false';
?>
我想查找一个字符串是否包含在一个字符串中,但它总是如此。为什么总是这样试图找到一个字符串是否包含字符串
<?php
$test = 'ORDER BY `views`';
if(strpos($test,'views') !== true) echo 'true';
else echo 'false';
?>
您正在使用的参数为strpos()
不正确。
您使用strpos($needle, $haystack)
但它实际上应该是strpos($haystack, $needle)
注意strpos()
返回FALSE
如果针没有在草堆里找到。所以,你需要检查它是否返回FALSE
(而不是TRUE
)。
与您的代码,就成了:
if(strpos($test, 'views') !== FALSE)
echo 'true';
else
echo 'false';
检查这个
$test = 'ORDER BY `views`';
if (strpos($test,'views') !== false) {
echo 'true';
} else {
echo 'false';
}
也使用
您可以使用这些字符串函数,
strstr - 查找字符串的第一次出现
stristr - 不区分大小写的strstr()
strrchr - 查找字符串
strpos字符最后一次出现 - 查找的位置在字符串中首次出现子字符串
strpbrk - 在字符串中搜索任意字符集
如果没有帮助,那么你应该使用preg
正则表达式
preg_match - 执行正则表达式匹配
与[this](http://stackoverflow.com/a/19248048/1438393)回答(大括号除外)有什么不同? –
@AmalMurali把这个答案30分钟前:)为什么你复制答案? – Adam
@Adam和AmalMurali检查现在 –
对不起,那是一个意外刚从尝试,但我仍然得到同样的问题。 – Flashpacker
@Flashpacker:你看过演示了吗? –
确定,我会玩弄它,所以我永远不会使用真实?一定是假的? – Flashpacker