PHP:可变函数

    简介:大多数可变函数主要用来测试一个函数的类型的,包括测试特定类型的测试函数、测试变量状态的函数等。

测试和设置变量类型

  • gettype()函数
  • settype()函数

    PHP中最常见的测试一个函数类型的两个函数是 gettype() 和 settype() ;

    gettype()函数

    函数原型如下:
    string gettype(mixed var );
        说明:使用gettype()函数,必须传递一个变量给它,它将确定变量的类型并且返回一个包含类型名称字符串。

    • PHP中标准的字符串包括:boolintdouble(浮点型)、stringarrayobjectresource;
    • 如果变量类型不是标准类型之一,该函数将会返回“unknow type”;
    settype()函数

    bool settype(mixed var, string type);
        说明:需要使用settype()函数时,必需要传入两个参数,第一个参数是 设置改变类型的变量, 第二个参数是想要转换成的目标类型,即上述类型列表中的某个类型的字符串。

        $a = 56;
        echo gettype($a)."<br />";
        settype($a,'string');
        echo gettype($a)."<br />";

    运行结果显示如下:
测试结果

特定类型的测试函数

  • is_array():
    • 检查变量是否是数组
  • is_double()、is_float()、is_real():
    • 这三个函数相同,都用量检测变量是否是浮点型
  • is_long()、 is_int()、 is_integer():
    • 这三个函数相同,用来检测变量是否是整数
  • is_string():
    • 检查变量是否是字符串
  • is_bool():
    • 检查变量是否是布尔型
    $a = false;//赋值
    echo gettype($a)."<br />";//输出数据类型 boolean
    $b = 0;//一般编程语言中,0代表假(false),1代表真(true)
    echo gettype($b);//数组的数据类型为integer
  • is_object():
    • 检查一个变量是否是对象
  • is_resource():
    • 检查一个变量是否是资源
  • is_null():
    • 检查变量是否为null
  • is_scalar():
    • 检查一个变量是否为标量,标量有整数、布尔值、字符串或浮点数
  • is_numeric():
    • 检查该变量是否是任何类型的数字或数字型字符串
$a = "4321";
var_dump(is_numeric($a));//运行后浏览器输出“ boolean true”
echo is_numeric($a);//输出 数字1(即代表布尔 真)
  • is_callable():
    • 检查一个变量是否是有效的函数名称
function test(){
    return "test function:is_callable()";
}
var_dump('test');//输出 boolean true
var_dump('text');//输出boolean false

测试变量状态函数

    主要包括两个函数: isset() 和 empty()

isset()函数

    函数原型如下:
bool isset(mixed var [, mixed var[,…]]);
    说明:这个函数需要输入一个变量名称作为参数,如果这个变量存在,则返回true(boolean型),如果这个变量不存在则返回false(boolean型)。
    强调:isset()函数用于检测变量是否存在,与变量是否有值无关
    补充:isset()函数和unset()函数结合,可以销毁特定的变量;

empty()函数

    函数原型如下:
bool empty(mixed var)
    说明:empty()函数用来检测一个变量是否存在,以及它的值是否为非空或非0,并返回对应的true或false
    代码示例:

$var = "";
var_dump(empty($var));
var_dump(isset($var));

$var1 = 1;
var_dump(empty($var1));//输出 'boolean false'
var_dump(isset($var1));//输出 'boolean true'

$var1 = 0;
var_dump(empty($var1));//输出 'boolean true'
var_dump(isset($var1));//输出 'boolean true'

//$var1 = 1;
var_dump(empty($var1));//输出 'boolean true'
var_dump(isset($var1));//输出 'boolean false'

    补充:结合isset()函数和empty()函数,对于表单域的内容进行过滤,可以确保用户填写了正确的表单

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值