使用PHP获取单词的第一个字母

时间:2014-04-24 05:07:54

标签: php

如果变量前面包含S

,是否可以设置变量验证

我的代码示例:

$a = "S0225";
$b = "700S4";

if(strpos($a, 'S') !== FALSE) {
    echo "PASS";
    //for this It will pass
}

if(strpos($b, 'S') !== FALSE) {
    echo "PASS";
    //for this, why this pass too, whereas I want just value of variable start front S
}

4 个答案:

答案 0 :(得分:3)

strpos 返回针存在于相对于haystack字符串开头的位置(与offset无关)。另请注意,字符串位置从0开始,而不是1.

如果未找到针,则返回FALSE。

因此,为了确保S位于字符串的开头,这意味着{0}应该位于0位。

S

来自文档的警告:

  

此函数可能返回布尔值FALSE,但也可能返回a   非布尔值,其值为FALSE。请阅读有关的部分   布尔值获取更多信息。使用===运算符进行测试   返回此函数的值。

答案 1 :(得分:3)

您也可以将substr()用于此目的

if(substr($string_goes_here, 0, 1) === 'S') {
    //Pass
}

答案 2 :(得分:1)

这样检查..

if(strpos($b, 'S')==0)  //<---- Check for position instead of boolean
{
    echo $b; // Will not print..
}

答案 3 :(得分:1)

尝试

if(strpos($b, 'S') == 0) {
    echo "PASS";
}

您也可以尝试使用substr

if (substr($b, 0, 1) == 'S') {
    echo "PASS";
}