MENU

PHP变量相关函数

2021 年 04 月 29 日 • 阅读: 150 • 学习笔记

函数描述
boolval获取变量的布尔值
floatval获取变量的浮点值
empty检查一个变量是否为空
isset检测变量是否已设置并且非 NULL
get_defined_vars返回由所有已定义变量所组成的数组
gettype获取变量的类型
settype设置变量的类型
intval获取变量的整数值
is_array检测变量是否是数组
is_bool检测变量是否是布尔型
is_callable检测参数是否为合法的可调用结构
is_float检测变量是否是浮点型
is_int检测变量是否是整数
is_iterable检测变量的内容是否是一个可迭代的值
is_null检测变量是否为 NULL
is_numeric检测变量是否为数字或数字字符串
is_object检测变量是否是一个对象
is_resource检测变量是否为资源类型
is_scalar检测变量是否是一个标量
is_string检测变量是否是字符串
print_r打印变量,输出易于阅读的信息
var_dump打印变量的相关信息
var_export输出或返回一个变量,以字符串形式表示
strval获取变量的字符串值
serialize序列化对象
unserialize从已存储的表示中创建 PHP 的值
unset释放给定的变量

boolval

boolval 函数用于获取变量的布尔值。

PHP版本要求:PHP 5 >= 5.5.0, PHP 7

语法

boolean boolval ( mixed $var )
参数描述
var要转换为布尔值的变量。

floatval

floatval 函数用于获取变量的浮点值。

PHP版本要求:PHP 4 >= 4.2.0, PHP 5, PHP 7

语法

float floatval ( mixed $var )
参数描述
varvar 可以是任何标量类型。你不能将 floatval() 用于数组或对象。

empty

empty() 函数用于检查一个变量是否为空。

PHP版本要求:PHP 4, PHP 5, PHP 7

empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。

empty() 5.5 版本之后支持表达式了,而不仅仅是变量。

语法

bool empty ( mixed $var )
参数描述
var待检查的变量。

注意:在 PHP 5.5 之前,empty() 仅支持变量;任何其他东西将会导致一个解析错误。换言之,下列代码不会生效:

empty(trim($name))

作为替代,应该使用:

trim($name) == false

empty() 并不会产生警告,哪怕变量并不存在。 这意味着 empty() 本质上与 !isset($var) || $var == false 等价。

返回值
当 var 存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE。

以下的变量会被认为是空的:

  • "" (空字符串)
  • 0 (作为整数的0)
  • 0.0 (作为浮点数的0)
  • "0" (作为字符串的0)
  • NULL
  • FALSE
  • array() (一个空数组)
  • $var; (一个声明了,但是没有值的变量)

get_defined_vars

get_defined_vars() 返回由所有已定义变量所组成的数组。

语法

array get_defined_vars ( void )

此函数返回一个包含所有已定义变量列表的多维数组,这些变量包括环境变量、服务器变量和用户定义的变量。

gettype

gettype() 函数用于获取变量的类型。

注意:不要使用 gettype() 来测试某种类型,因为其返回的字符串在未来的版本中可能需要改变。此外,由于包含了字符串的比较,它的运行也是较慢的。使用 is_* 函数代替。

PHP版本要求:PHP 4, PHP 5, PHP 7

语法

string gettype ( mixed $var )
参数描述
var变量

返回值
返回字符串,可能值为:

  • boolean
  • integer
  • double
  • string
  • array
  • object
  • resource
  • NULL
  • unknown type

intval

intval() 函数用于获取变量的整数值。

intval() 函数通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1。

PHP版本要求:PHP 4, PHP 5, PHP 7

语法

int intval ( mixed $var [, int $base = 10 ] )
参数描述
var要转换成 integer 的数量值。
base转化所使用的进制。

如果 base 是 0,通过检测 var 的格式来决定使用的进制:

  • 如果字符串包括了 "0x" (或 "0X") 的前缀,使用 16 进制 (hex);否则,
  • 如果字符串以 "0" 开始,使用 8 进制(octal);否则,
  • 将使用 10 进制 (decimal)。

返回值
成功时返回 var 的 integer 值,失败时返回 0。 空的 array 返回 0,非空的 array 返回 1。

最大的值取决于操作系统。 32 位系统最大带符号的 integer 范围是 -2147483648 到 2147483647。举例,在这样的系统上, intval('1000000000000') 会返回 2147483647。64 位系统上,最大带符号的 integer 值是 9223372036854775807。

字符串有可能返回 0,虽然取决于字符串最左侧的字符。

|十年之约

本网站由提供CDN加速/云储存服务