zoukankan      html  css  js  c++  java
  • php中的类型比较

    一、使用php函数

    gettype()

    获取变量类型,速度比较慢,建议使用is_*系列。

    empty()

    如果 var 是非空或非零的值,则 empty() 返回 FALSE
    ""0"0"NULLFALSEarray()var $var 都返回True。

    isset()

    检测变量是否设置,如果 var 存在则返回 TRUE,否则返回 FALSE

    对变量unset以后,将不再是isset。

    if($x)

    is_*

    is_null:检测变量是否为 NULL

    is_array:检测变量是否是数组

    is_bool:检测变量是否是布尔型

    is_double,is_float,is_real:检测变量是否是浮点

    is_int,is_integer,is_long:检测变量是否是整数

    is_numeric:检测变量是否为数字或数字字符串

    is_object:检测变量是否是一个对象

    is_resource:检测变量是否为资源类型

    is_scalar:检测变量是否是一个标量,标量变量是指那些包含了 integer、float、string 或 boolean的变量,而 array、object 和 resource 则不是标量。

    is_string:检测变量是否是字符串

    表达式

    gettype()

    empty()

    is_null()

    isset()

    boolean : if($x)

    $x = "";

    string

    TRUE

    FALSE

    TRUE

    FALSE

    $x = NULL

    NULL

    TRUE

    TRUE

    FALSE

    FALSE

    var $x;

    NULL

    TRUE

    TRUE

    FALSE

    FALSE

    $x 从未定义

    NULL

    TRUE

    TRUE

    FALSE

    FALSE

    $x = array();

    array

    TRUE

    FALSE

    TRUE

    FALSE

    $x = false;

    boolean

    TRUE

    FALSE

    TRUE

    FALSE

    $x = true;

    boolean

    FALSE

    FALSE

    TRUE

    TRUE

    $x = 1;

    integer

    FALSE

    FALSE

    TRUE

    TRUE

    $x = 42;

    integer

    FALSE

    FALSE

    TRUE

    TRUE

    $x = 0;

    integer

    TRUE

    FALSE

    TRUE

    FALSE

    $x = -1;

    integer

    FALSE

    FALSE

    TRUE

    TRUE

    $x = "1";

    string

    FALSE

    FALSE

    TRUE

    TRUE

    $x = "0";

    string

    TRUE

    FALSE

    TRUE

    FALSE

    $x = "-1";

    string

    FALSE

    FALSE

    TRUE

    TRUE

    $x = "php";

    string

    FALSE

    FALSE

    TRUE

    TRUE

    $x = "true";

    string

    FALSE

    FALSE

    TRUE

    TRUE

    $x = "false";

    string

    FALSE

    FALSE

    TRUE

    TRUE

     二、用 == 进行松散比较

     

    TRUE

    FALSE

    1

    0

    -1

    "1"

    "0"

    "-1"

    NULL

    array()

    "php"

    TRUE

    TRUE

    FALSE

    TRUE

    FALSE

    TRUE

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    TRUE

    TRUE

    FALSE

    1

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    0

    FALSE

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    TRUE

    FALSE

    TRUE

    -1

    TRUE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    "1"

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    "0"

    FALSE

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    "-1"

    TRUE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    NULL

    FALSE

    TRUE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    TRUE

    FALSE

    array()

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    "php"

    TRUE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    三、用 === 进行严格比较

     

    TRUE

    FALSE

    1

    0

    -1

    "1"

    "0"

    "-1"

    NULL

    array()

    "php"

    TRUE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    1

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    0

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    -1

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    "1"

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    "0"

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    FALSE

    "-1"

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    FALSE

    NULL

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    FALSE

    array()

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

    FALSE

    "php"

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    TRUE

      
  • 相关阅读:
    HDU 1828 Picture (线段树:扫描线周长)
    [USACO18OPEN] Multiplayer Moo (并查集+维护并查集技巧)
    NOIP2016 天天爱跑步 (树上差分+dfs)
    NOIP2013 华容道 (棋盘建图+spfa最短路)
    NOIP2015 运输计划 (树上差分+二分答案)
    NOIP2018 前流水账
    luogu P2331 [SCOI2005]最大子矩阵
    luogu P2627 修剪草坪
    CF101D Castle
    luogu P2473 [SCOI2008]奖励关
  • 原文地址:https://www.cnblogs.com/tenghoo/p/php_type_compare.html
Copyright © 2011-2022 走看看