我想知道如果变量只包含1个字,我怎么能在PHP中找到。它应该能够识别:“foo”“1326”“; 394aa”等等。
这将是这样的:
$txt = "oneword";
if($txt == 1 word){ do.this; }else{ do.that; }
感谢。
答案 0 :(得分:8)
我假设一个单词被定义为由一个空格符号
分隔的任何字符串$txt = "multiple words";
if(strpos(trim($txt), ' ') !== false)
{
// multiple words
}
else
{
// one word
}
答案 1 :(得分:4)
什么定义了一个单词?是否允许空格(也许是名字)?是否允许使用连字符?标点?你的问题定义不明确。
假设您只想确定您的值是否包含空格,请尝试使用正则表达式:
http://php.net/manual/en/function.preg-match.php
<?php
$txt = "oneword";
if (preg_match("/ /", $txt)) {
echo "Multiple words.";
} else {
echo "One word.";
}
?>
修改强> 使用正则表达式的好处是,如果您能够熟练使用它们,它们将解决您的许多问题,并使未来的需求变化更加容易。我强烈建议使用正则表达式来简单检查空间的位置,既考虑到今天问题的复杂性(同样,也许空格不是在你的要求中划分单词的唯一方法),以及未来改变要求的灵活性。
答案 2 :(得分:1)
利用PHP中包含的strpos函数。
以整数形式返回位置。如果没有找到针,strpos() 将返回布尔值FALSE。
答案 3 :(得分:1)