is_string

(PHP 4, PHP 5, PHP 7, PHP 8)

is_string查找变量类型是否为字符串

描述

is_string(混合 $value): 布尔值

查找给定变量类型是否为字符串。

参数

value

要评估的变量。

返回值

如果 value 的类型为 字符串,则返回 true,否则返回 false

示例

示例 #1 is_string() 示例

<?php
$values
= array(false, true, null, 'abc', '23', 23, '23.5', 23.5, '', ' ', '0', 0);
foreach (
$values as $value) {
echo
"is_string(";
var_export($value);
echo
") = ";
echo
var_dump(is_string($value));
}
?>

以上示例将输出

is_string(false) = bool(false)
is_string(true) = bool(false)
is_string(NULL) = bool(false)
is_string('abc') = bool(true)
is_string('23') = bool(true)
is_string(23) = bool(false)
is_string('23.5') = bool(true)
is_string(23.5) = bool(false)
is_string('') = bool(true)
is_string(' ') = bool(true)
is_string('0') = bool(true)
is_string(0) = bool(false)

参见

添加注释

用户贡献的注释 2 个注释

laszlo dot heredy shift-two gmail etc
10 年前
在对象上使用 is_string() 将始终返回 false(即使使用 __toString())。

<?php
class B {
public function
__toString() {
return
"B() 的实例可以被视为字符串!\n";
}
}

$b = new B();
print(
$b); // B() 的实例可以被视为字符串!
print(is_string($b) ? 'true' : 'false'); // false
?>
Peter Barney
6 年前
如前所述,is_string() 在具有 __toString() 方法的对象上返回 false。以下是一种简单的方法来进行检查,它将起作用

<?php
// 确定传递的参数是否可以像字符串一样处理。
function is_stringy($text) {
return (
is_string($text) || (is_object($text) && method_exists($text, '__toString' ));
}
To Top