概述

  l  变量就是一个容器,变量本身并没有类型,变量的类型解决值的类型。

  l  PHP和JS都属于弱类型语言,变量在运行过程中,类型是可以变的。但是,Java不可以。

  l  标量(基本)数据类型:字符串型、整型、浮点型、布尔型

  l  复合数据类型:数组、对象

  l  特殊数据类型:资源、NULL

判断变量类型的函数

以下函数都返回布尔值,成功返回TRUE,失败返回FALSE

  l  is_bool(),判断变量是不是布尔型

  l  is_int(),判断变量是不是整型

  l  is_string() 判断变量是不是字符串型

  l  is_float() 判断变量是不是浮点型

  l  is_numeric() 判断变量不是数值型或数字字符串。

  l  is_array() 判断变量是不是数组

  l  is_null()  判断变量是否为NULL

  l  is_resource() 判断变量是不是资源型

注意:通过地址栏或表单向服务器传递的任何数据,都是字符串。变量只存在于内存当中,离开内存都是字符串。

整型

  l  整型包含正整数、负整数、零。

  l  可以用10进制、八进制、16进制表示。

  l  PHP中最大整数:PHP_INT_MAX,(2^31)-1

如果给出的整数超出了PHP_INT_MAX的范围,该怎么办?

如果两个整数运算的结果超出了PHP_INT_MAX的范围,该怎么办?

浮点型

l  浮点型,包括整数和小数,精度比整数更高。

l  浮点型的范围:1.8E-308~1.8E+308

在计算机底层,所有数据都要转成二进制,才能进行运算。但是有些浮点数无法精确转成二进制。

这种现象是二进制的缺陷造成的。

因此,我们不要对浮点数进行比较运算,最好的办法:就是将浮点转成整数,再进行运算。

字符串型

长字符串

布尔型

空型

资源型

数据类型转换

PHP开发——数据类型的更多相关文章

  1. Python开发——数据类型【列表】

    列表的定义 中括号[]内以逗号分隔开,按照索引,存放各种数据类型,每个位置代表一个元素 list_t = ['张三','Lucy',123] print(list_t) # ['张三', 'Lucy' ...

  2. Python开发——数据类型【字典】

    字典的定义 # Python语言中唯一的类型映射 # 键与值之间用“:”分开 # 项与项之间用“,”分开 person = {"name":"yuan",&qu ...

  3. Python开发——数据类型【数字】

    布尔型 bool型只有两个值:True 或 False 我们将bool值归类为数字,习惯上:1表示true,0表示false 整型 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2* ...

  4. Python开发——数据类型【字符串】

    字符串定义 字符串是一个有序的字符的集合,用于存储和表示基本的文本信息 在Python中加了引号的字符,都被认为是字符串! 单引号.双引号.多引号之间的区别? 答案:单双引号没有区别 多引号的作用? ...

  5. Python开发——数据类型【元祖】

    元祖的定义 tu = (11,22,33,44,) print(tu) # (11, 22, 33, 44) tu = tuple((11,22,33,44,)) print(tu) # (11, 2 ...

  6. Python开发——数据类型【集合】

    集合的定义 由一个或多个确定的元素所构成的整体 可变集合 s=set('hello') print(s) # {'e', 'l', 'o', 'h'} s=set(['alex','alex','Lu ...

  7. Python开发——数据类型【运算符】

    算数运算符 比较运算符 赋值运算符 逻辑运算符 成员运算符

  8. Python开发——数据类型【字符串格式化】

    字符串格式化之——% # 字符串格式化 msg = 'I am %s , My hobby is %s'%('yuan','play') print(msg) # I am yuan , My hob ...

  9. PHP开发——目录

    PHP开发基础 PHP开发——环境安装 PHP开发——基础 PHP开发——变量 PHP开发——超全局数组变量 PHP开发——常量 PHP开发——数据类型 PHP开发——进制转换 PHP开发——运算符 ...

随机推荐

  1. nginx里proxy_pass有无/的区别

    nginx在反向代理的时候,proxy_pass需要指定路径,有无"/"的区别,如下:   location /lile { 配置一: proxy_pass http://192. ...

  2. C语言数组指针

    C语言中的数组指针与指针数组: ·数组指针一.区分 首先我们需要了解什么是数组指针以及什么是指针数组,如下: int *p[5];int (*p)[5];数组指针的意思即为通过指针引用数组,p先和*结 ...

  3. PHP-ML机器学习库之安装篇

    1.PHP-ML库安装要求:PHP>=7.1 2.切换到项目的跟目录下,使用composer进行安装:composer require php-ai/php-ml 安装完成后的目录如下: 新建测 ...

  4. VUE 进行微信支付,解决 微信支付URL未注册

    使用history方式 比较坑吧就不吐槽了,说下实现方式 需要解决问题: 1.因为我的微信支付授权路由是:m.xxxx.com,this.$router.push('xxx')之后经常出现 [微信支付 ...

  5. Java的Finalizer引发的内存溢出

    本文介绍的是Java里一个内建的概念,Finalizer.你可能对它对数家珍,但也可能从未听闻过,这得看你有没有花时间完整地看过一遍java.lang.Object类了.在java.lang.Obje ...

  6. Python数字(Number)

    Python 数字数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间. 以下实例在变量赋值时 Number 对象将被创建:var1 = 1var2 ...

  7. DBus send byte array over gdbus ----Send dbus data

    遇到一个问题,如何通过dbus传送uint8数组元素 有3种方法, 1.直接传 ay 2.传  a(y) 3.xml定义为 ay,但是通过annotation 强行将 guchar 转为GVarian ...

  8. vue仿淘宝结账订单

    <template>  <div class="container">  <div class="checkout-title"& ...

  9. BZOJ 2173 luoguo P4451 [国家集训队]整数的lqp拆分

    整数的lqp拆分 [问题描述] lqp在为出题而烦恼,他完全没有头绪,好烦啊… 他首先想到了整数拆分.整数拆分是个很有趣的问题.给你一个正整数N,对于N的一个整数拆分就是满足任意m>0,a1 , ...

  10. 中间件weblogic控制台创建数据源报错---根据真实故事改编

    1.在weblogic控制台创建数据源,有报错--不能创建数据源,图免 2.weblogic数据源管理节点所在服务器telnet测试,到数据库1521端口是通的 3.经过请教各路大神,得出结论:由于子 ...