如何检查'。'[dot]是否存在于字符串中? strstr无法在php中运行

时间:2013-02-03 19:39:00

标签: php strstr

我想看看是否。 [dot]是否以字符串形式出现。

我尝试过strstr但它返回false。

这是我的代码: -

<?php
$str = strpos("true.story.bro", '.');
if($str === true)
{
        echo "OK";
} else {
        echo "No";
}
?>

我想看看'。'是否存在字符串,我可以做爆炸,但我想做一行,我怎么能这样做?

由于

5 个答案:

答案 0 :(得分:13)

您可以直接使用strpos

if (strpos($mystring, ".") !== false) {
    //...
}

希望这有帮助:)

答案 1 :(得分:0)

Strpos返回第一个参数中第一个出现的索引。使用

$str !== false

答案 2 :(得分:0)

你错误地使用了strpos。它返回字符串第一次出现的整数,如果找到则返回true

请尝试使用此代码:

$str = strpos("true.story.bro", '.');
if($str !== false)
{
    echo "OK";
} else {
    echo "No";
}

答案 3 :(得分:0)

如果“。”在字符串的第一个字节处,strpos将正确返回零。那不方便的评估等于false。像这样颠倒你的逻辑:

<?php
$str = strpos("true.story.bro", '.');
if($str === false)
{
        echo "No";
} else {
        echo "OK";
}
?>

答案 4 :(得分:0)

strpos的返回是整数(0到strlen(string)-1)还是boolean(false),然后,你可以用两种情况来检查:

$pos = strpos('this is text with . dot', '.');
if(is_int($pos)){
 echo 'dot is found';
}else{
 echo 'dot not found';
}

or 
if($pos === false){
 echo 'dot not found';
}else{
 echo 'dot found';
}

note strpos('. test', '.') = 0  then is_int(0) ?  true