PHP 变量处理函数

PHP is_scalar() 函数检查变量是否是标量。如果变量是标量,则该函数返回 true,否则返回 false。

标量变量是包含 int、float、string 或 bool 的变量。类型数组、对象和资源不是标量。 is_scalar() 不认为 NULL 是标量。

语法

is_scalar(variable) 

参数

variable必填。 指定要计算的变量。

返回值

如果变量标量,则返回 true,否则为 false。

示例:

下面的示例显示了 is_scalar() 函数的用法。

<?php
var_dump(is_scalar(10));     //返回:bool(true)
var_dump(is_scalar(10.5));   //返回:bool(true)
var_dump(is_scalar(1e5));    //返回:bool(true)
var_dump(is_scalar('xyz'));  //返回:bool(true)
var_dump(is_scalar(true));   //返回:bool(true)

echo "\n";

var_dump(is_scalar(array()));   //返回:bool(false)
var_dump(is_scalar(null));      //返回:bool(false)
?> 

上述代码的输出将是:

bool(true)
bool(true)
bool(true)
bool(true)
bool(true)

bool(false)
bool(false) 

示例:

再考虑一个示例,其中此函数用于检查所有数组的元素是否是标量。

<?php
$Arr = array(10, 10.5, null, false, 
             "xyz", 1e3, array()); 

foreach ($Arr as $value) {
  echo "is_scalar(".var_export($value, true).") = ";
  var_dump(is_scalar($value));
}
?> 

上述代码的输出将是:

is_scalar(10) = bool(true)
is_scalar(10.5) = bool(true)
is_scalar(NULL) = bool(false)
is_scalar(false) = bool(true)
is_scalar('xyz') = bool(true)
is_scalar(1000.0) = bool(true)
is_scalar(array (
)) = bool(false)