如果字符串只包含空格?

tar*_*eld 40 php string

我如何检查字符串是否包含空格?

Joh*_*ler 51

if (strlen(trim($str)) == 0)
Run Code Online (Sandbox Code Playgroud)

或者如果你不想包含空字符串,

if (strlen($str) > 0 && strlen(trim($str)) == 0)
Run Code Online (Sandbox Code Playgroud)

  • @voyager:这将确定字符串是否具有_any_前导或尾随空格,问题是它是否具有_only_空格. (6认同)
  • @voyger:那仍然有点过分.做`if(strlen($ str)> 0 && strlen(trim($ str))== 0)`如果这就是你想要的.或者使用`!empty($ str)`.你为什么要把它与修剪过的绳子比较呢? (3认同)

Dav*_*och 6

来自:https : //stackoverflow.com/a/2992388/160173

如果您想投票,请在另一个答案上做,而不是这个!


这将是最快的方法:

$str = '      ';
if (ctype_space($str)) {

}
Run Code Online (Sandbox Code Playgroud)

返回false空字符串,因为empty不是空格。如果您需要包含一个空字符串,则可以添加。|| $str == ''这仍将比regex或trim更快地执行。

ctype_space


作为功​​能:

function stringIsNullOrWhitespace($text){
    return ctype_space($text) || $text === "" || $text === null;
}
Run Code Online (Sandbox Code Playgroud)


Enr*_*sso 5

echo preg_match('/^ *$/', $string)
Run Code Online (Sandbox Code Playgroud)

应该管用.

  • @stereofrog:我恭敬地不同意.对于像这样的东西,正则表达式是过度的,可以通过内置函数完美地处理. (4认同)