实例解析php的数据类型


Posted in PHP onOctober 24, 2018

PHP的数据类型分为三大类,八小类:

1、标量类型

boolean(布尔型):这是最简单的类型,只有两个取值,可以为TRUE/true或FALSE/false,不区分大小写。详细请查看:PHP布尔类型(boolean)

integer(整型):整型值可以使用十进制,十六进制或八进制表示,前面可以加上可选的符号( - 或 + )。八进制表示数字前必须加上0(零),十六进制表示数字前必须加上0x。详细请查看:PHP整型数据(integer)

float(浮点型,也称作double):详细请查看:PHP浮点类型(float)

string(字符串):字符型变量不同于其他编程语言有字符和字符串之分,在PHP中,统一使用字符型变量来定义字符或者字符串。详细请查看:PHP字符串类型(string)

2、复合类型

array(数组):数组型变量是一种比较特殊的变量类型

object(对象):对象也是一种特殊的数据类型,要创建object变量,一般使用new关键字来获取,详细请查看:PHP对象类型(object)

3、特殊类型

resource(资源型):资源是一种特殊的变量,保存了到外部资源的的一个引用。资源是通过专门的函数来建立和使用的。详细请查看:PHP资源类型(resource)

NULL(空null):表示一个变量没有值。NULl唯一可能的值就是NULL

注意:PHP是一种弱类型的语言,其变量没有数据类型,但是变量所存储的数据有对应的数据类型

整型数据类型:采用8个字节存储,并且提供了多种进制的整数存储方式

$num = 10;      // 十进制
  $num1 = 0123;    // 八进制(83)
  $num2 = 0x123;   // 十六进制(291)
  $num3 = 0b1101;   //二进制(13)

浮点型数据类型:采用8个字节存储,并且提供了多种存储方式

$float_num = 1.23;
  $float_num1 = 1.23e3;    // 1.23乘10的3次方

其在内存中的存储方式是:将8个字节的一部分拿出来存储指数,一部分存储有效数字,则某些时候,当超出一定范围,会导致精度丢失。

字符串数据类型

在PHP中,凡是用户输入的数据和程序员使用了引号(单引号和双引号)定义的数据,系统都理解为字符串,PHP7字符串的长度理论上无限制

单引号和双引号都可以定义字符串,但是彼此是有区别的:

--单引号中只能解析少量的转义符号:\',\

--双引号中能解析较多的转义字符:$,\”,\n

双引号中能够解析嵌套在字符串中的php变量( 变量要与其他字符串分离,使用{} )

$a = "你好";
  $c = "$a世界";
  // $c = "{$a}世界" 常用
  echo $c;    //输出“你好世界”

字符串查看

可以通过下标$str[ 1 ]来查看字符串中制定下标的字符,当索引为负数时,则从后往前作为索引方向

定义数组

在PHP中可以通过多种方式来定义数组,通用的几种方式如下:

-- 使用array关键字来初始化数组

-- 使用数组括号 [ ] 来初始化数组

// 使用array
  $arr1 = array();    // 可以不指定元素
  $arr2 = array("name", "age");
// 使用[]定义数组
  $arr3 = [];
  $arr4 = ["name", "age"];

数组的特点

1、PHP数组中的元素理论上没有数量限制

2、PHP数组中可以动态添加元素

3、PHP数组元素的值可以是任意数据类型

4、PHP数组下标可以是纯数字(索引数组),纯字符串(关联数组),混合数字和字符串(混合数组)

类型判断

通过系统函数判定数据类型:函数的格式使用 is_ 开头,后面跟对应的数据类型,其返回结果是布尔类型。

类型转换

自动转换:PHP会自动根据数据要参与的运算场景来将不符合条件的数据类型的数据转换目标类型数据,这种转换不会改变变量原来的数据类型

强制转换:使用 int(目标类型)格式来转换数据

PHP 相关文章推荐
关于php fread()使用技巧
Jan 22 PHP
php设计模式 Strategy(策略模式)
Jun 26 PHP
php网站地图生成类示例
Jan 13 PHP
smarty中js的调用方法示例
Oct 27 PHP
PHP网站开发中常用的8个小技巧
Feb 13 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
May 21 PHP
PHP数学运算函数大汇总(经典值得收藏)
Apr 01 PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 PHP
PHP连接MYSQL数据库的3种常用方法
Feb 27 PHP
CakePHP框架Model关联对象用法分析
Aug 04 PHP
PHP编程实现脚本异步执行的方法
Aug 09 PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
Oct 23 #PHP
PHP中使用mpdf 导出PDF文件的实现方法
Oct 22 #PHP
php微信公众号开发之答题连闯三关
Oct 20 #PHP
php微信公众号开发之简答题
Oct 20 #PHP
php微信公众号开发之快递查询
Oct 20 #PHP
php微信公众号开发之翻页查询
Oct 20 #PHP
php微信公众号开发之校园图书馆
Oct 20 #PHP
You might like
IP攻击升级,程序改进以对付新的攻击
2010/11/23 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
PHPMailer发送邮件
2016/12/28 PHP
Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
2019/05/08 PHP
JavaScript版TAB选项卡效果实例
2013/08/16 Javascript
高效的获取当前元素是父元素的第几个子元素
2013/10/15 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
JavaScript+CSS实现仿Mootools竖排弹性动画菜单效果
2015/10/14 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
基于JS实现的笛卡尔乘积之商品发布
2016/05/13 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
Javascript面试经典套路reduce函数查重
2017/03/23 Javascript
微信小程序如何获取用户手机号
2018/01/26 Javascript
详解ES6 Promise对象then方法链式调用
2018/10/20 Javascript
详解使用React制作一个模态框
2019/03/14 Javascript
Node如何后台数据库使用增删改查功能
2019/11/21 Javascript
微信小程序实现录制、试听、上传音频功能(带波形图)
2020/02/27 Javascript
Python随机生成均匀分布在三角形内或者任意多边形内的点
2017/12/14 Python
更改Python的pip install 默认安装依赖路径方法详解
2018/10/27 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
Python库安装速度过慢解决方案
2020/07/14 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
实现CSS3中的border-radius(边框圆角)示例代码
2013/07/19 HTML / CSS
用CSS3的box-reflect设置文字倒影效果的方法讲解
2016/03/07 HTML / CSS
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
考试违纪检讨书
2014/02/02 职场文书
闭幕式主持词
2014/04/02 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
年度评优评先方案
2014/06/03 职场文书
铣床操作工岗位职责
2014/06/13 职场文书
环境工程专业毕业生求职信
2014/09/30 职场文书
2015年党员发展工作总结
2015/05/13 职场文书
任长霞观后感
2015/06/16 职场文书
村主任当选感言
2015/08/01 职场文书
总结Python使用过程中的bug
2021/06/18 Python
教你部署vue项目到docker
2022/04/05 Vue.js