PHP INT类型在内存中占字节详解


Posted in PHP onJuly 20, 2019

本教程将介绍输出INT类型在内存中占多少个字节

新建一个333.php,如图所示:

PHP INT类型在内存中占字节详解

添加php的界定符(<?php?>),如图所示:

PHP INT类型在内存中占字节详解

声明PHP与浏览器交互的文件类型和编码,如图所示:

PHP INT类型在内存中占字节详解

使用常量 PHP_INT_SIZE 来获取INT类型在内存中占多少个字节,如图所示:

PHP INT类型在内存中占字节详解

使用 echo 语句输出常量 PHP_INT_SIZE 获取到的字节数,如图所示:

PHP INT类型在内存中占字节详解

运行网页,在浏览器上显示获取到的结果,如图所示:

PHP INT类型在内存中占字节详解

section id="smaller-text-left-7">至此,本教程结束!

至此,本教程结束!

内容扩展

php中int类型在不同平台所占不同字节数理解

1.在不同平台上占字节数与最大值

  • 在32位平台上int占4个字节,在64位平台上int占8个字节,PHP_INT_SIZE
  • 在32位平台上int的最大值2^31 - 1,在64位平台上int最大值2^63 - 1,PHP_INT_MAX。php中int不支持无符号

2.为什么在不同的平台上int类型所占字节数有差异呢

不管什么类型,编译型语言都会把源码编译成机器码,由于不同平台寄存器位宽不一样, 所以有了自己对int的规定, 导致int 这个数据类型比较特殊,具体分配的字节数与机器字长和编译器有关。但一般等于机器寄存器位宽(64位平台除外,默认为4字节),如在32位平台上(所谓32位平台是指通用寄存器的数据宽度是32)编写代码,int 类型分配4个字节,而在16位平台是则分配2个字节。编译器是把代码转换为机器码的软件,如果他愿意,可以把int转换为256位的,只不过会增加机器的复杂度,降低可移植性。

3.平台

个人把这三者合起来考虑(CPU+OS+Compiler)是因为:1、64位机器也可以装32位系统(x64装XP);2、32位机器上可以有16/32位的编译器(XP上有tc是16位的,其他常见的是32位的);3、即使是32位的编译器也可以弄出64位的integer来(int64)。以上这些是基于常见的wintel平台,加上我们可能很少机会接触的其它平台(其它的CPU和OS),所以个人认为所谓平台的概念是三者的组合。虽然三者的长度可以不一样,但显然相互配合(即长度相等,32位的CPU+32位的OS+32位的Compiler)发挥的能量最大。另外一个话题,如果只是从抽象的层面来看,每个程序有的只是虚拟的计算环境,可以不必考虑实际的环境,只需要了解虚拟环境的情况就可以了,这在不考虑移植性或者非底层编程的时候是很有帮助的,这样可以使你关注你的逻辑而不是实现

PHP 相关文章推荐
PHP入门速成(2)
Oct 09 PHP
PHP下使用CURL方式POST数据至API接口的代码
Feb 14 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
Nov 07 PHP
php使用curl检测网页是否被百度收录的示例分享
Jan 31 PHP
PHP彩蛋信息介绍和阻止泄漏的方法(隐藏功能)
Aug 06 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
Dec 25 PHP
使用PHP如何实现高效安全的ftp服务器(二)
Dec 30 PHP
php用正则判断是否为数字的方法
Mar 25 PHP
PHP版单点登陆实现方案的实例
Nov 17 PHP
PHP 并发场景的几种解决方案
Jun 14 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
Apr 04 PHP
Laravel 框架控制器 Controller原理与用法实例分析
Apr 14 PHP
PHP检测一个数组有没有定义的方法步骤
Jul 20 #PHP
PHP defined()函数的使用图文详解
Jul 20 #PHP
php实现 master-worker 守护多进程模式的实例代码
Jul 20 #PHP
PHP抽象类和接口用法实例详解
Jul 20 #PHP
PHP使用PDO、mysqli扩展实现与数据库交互操作详解
Jul 20 #PHP
Smarty模板语法详解
Jul 20 #PHP
Smarty模板变量与调节器实例详解
Jul 20 #PHP
You might like
解析PHPExcel使用的常用说明以及把PHPExcel整合进CI框架的介绍
2013/06/24 PHP
WordPress主题制作中自定义头部的相关PHP函数解析
2016/01/08 PHP
php生成带logo二维码方法小结
2016/04/08 PHP
php实现解析xml并生成sql语句的方法
2018/02/03 PHP
Dom 是什么的详细说明
2010/10/25 Javascript
Javascript简单实现可拖动的div
2013/10/22 Javascript
理解javascript中try...catch...finally
2015/12/25 Javascript
javascript+css3 实现动态按钮菜单特效
2016/02/06 Javascript
微信小程序 wxapp视图容器 view详解
2016/10/31 Javascript
微信小程序之数据缓存的实例详解
2017/09/29 Javascript
vue2.0父子组件间传递数据的方法
2018/08/16 Javascript
优雅的将ElementUI表格变身成树形表格的方法步骤
2019/04/11 Javascript
layer.js之回调销毁对话框的例子
2019/09/11 Javascript
es6 super关键字的理解与应用实例分析
2020/02/15 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
Javascript如何递归遍历本地文件夹
2020/08/06 Javascript
解决vue安装less报错Failed to compile with 1 errors的问题
2020/10/22 Javascript
解决pycharm双击但是无法打开的情况
2020/10/31 Javascript
python获取本机mac地址和ip地址的方法
2015/04/29 Python
tensorflow获取变量维度信息
2018/03/10 Python
神经网络(BP)算法Python实现及应用
2018/04/16 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
pyqt5 使用cv2 显示图片,摄像头的实例
2019/06/27 Python
Python 运行.py文件和交互式运行代码的区别详解
2019/07/02 Python
使用Pandas将inf, nan转化成特定的值
2019/12/19 Python
通过css3动画和opacity透明度实现呼吸灯效果
2019/08/09 HTML / CSS
GafasWorld哥伦比亚:网上购买眼镜
2017/11/28 全球购物
中国一家专注拼团的社交购物网站:拼多多
2018/06/13 全球购物
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
类成员函数的重载、覆盖和隐藏区别
2016/01/27 面试题
Oracle快照(snapshot)
2015/03/13 面试题
医大实习自我鉴定
2013/12/07 职场文书
大学班级计划书
2014/04/29 职场文书
大学生职业生涯规划大赛作品(精品)
2014/09/17 职场文书
2016拓展训练心得体会范文
2016/01/12 职场文书
Python生成九宫格图片的示例代码
2021/04/14 Python