四种标量类型:
? boolean(布尔型)
? integer(整型)
? float(浮点型,也称作 double)
? string(字符串)
两种复合类型:
? array(数组)
? object(对象)
最后是两种特殊类型:
? resource(资源)
? NULL(无类型)
为了确保代码的易读性,还有一些伪类型:
? mixed(混合类型)
? number(数字类型)
? callback(回调类型)
伪变量 $...
变量的类型通常不是由程序员设定的,确切地说,是由PHP根据该变量使用的上下文在运行时决定的。
如果想查看某个表达式的值和类型,用 var_dump() 函数。如果只是想得到一个易读懂的类型的表达方式用于调试,用 gettype() 函数。要查看某个类型,不要用 gettype(),而用 is_type 函数。如果要将一个变量强制转换为某类型,可以对其使用强制转换或者 settype() 函数。
【boolean】
要指定一个布尔值,使用关键字 TRUE 或 FALSE。两个都不区分大小写。
转换为布尔值
要明确地将一个值转换成 boolean,用 (bool) 或者 (boolean) 来强制转换。
当转换为 boolean 时,以下值被认为是 FALSE:
? 布尔值 FALSE 本身
? 整型值 0(零)
? 浮点型值 0.0(零)
? 空字符串,以及字符串 "0"
? 不包括任何元素的数组
? 不包括任何成员变量的对象(仅 PHP 4.0 适用)
? 特殊类型 NULL(包括尚未赋值的变量)
? 从空标记生成的 SimpleXML 对象
【integer】
整型值可以使用十进制,十六进制,八进制或二进制表示,前面可以加上可选的符号(- 或者 +)。
二进制表达的 integer 自 PHP 5.4.0 起可用。要使用八进制表达,数字前必须加上 0(零)。要使用十六进制表达,数字前必须加上 0x。要使用二进制表达,数字前必须加上 0b。
Integer 值的字长可以用常量 PHP_INT_SIZE来表示,自 PHP 4.4.0 和 PHP 5.0.5后,最大值可以用常量 PHP_INT_MAX 来表示。
如果给定的一个数超出了 integer 的范围,将会被解释为 float。同样如果执行的运算结果超出了 integer 范围,也会返回 float。
PHP 中没有整除的运算符。1/2 产生出 float 0.5。值可以舍弃小数部分强制转换为 integer,或者使用 round() 函数可以更好地进行四舍五入。
转换为整型
要明确地将一个值转换为 integer,用 (int) 或 (integer) 强制转换。
【float】
浮点数的精度有限。以十进制能够精确表示的有理数如 0.1 或 0.7,无论有多少尾数都不能被内部所使用的二进制精确表示,因此不能在不丢失一点点精度的情况下转换为二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10) 通常会返回 7 而不是预期中的 8,因为该结果内部的表示其实是类似 7.9999999999999991118...。
所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数或者 gmp 函数。
【NULL】
特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。
在下列情况下一个变量被认为是 NULL:
? 被赋值为 NULL。
? 尚未被赋值。
? 被 unset()。
【类型转换的判别】
允许的强制转换有:
? (int), (integer) - 转换为整形 integer
? (bool), (boolean) - 转换为布尔类型 boolean
? (float), (double), (real) - 转换为浮点型 float
? (string) - 转换为字符串 string
? (array) - 转换为数组 array
? (object) - 转换为对象 object
? (unset) - 转换为 NULL (PHP 5)
【Variable handling 函数】
?boolval — Get the boolean value of a variable
?debug_zval_dump — Dumps a string representation of an internal zend value to output
?doubleval — floatval 的别名
?empty — 检查一个变量是否为空
?floatval — 获取变量的浮点值
?get_defined_vars — 返回由所有已定义变量所组成的数组
?get_resource_type — 返回资源(resource)类型
?gettype — 获取变量的类型
?import_request_variables — 将 GET/POST/Cookie 变量导入到全局作用域中
?intval — 获取变量的整数值
?is_array — 检测变量是否是数组
?is_bool — 检测变量是否是布尔型
?is_callable — 检测参数是否为合法的可调用结构
?is_double — is_float 的别名
?is_float — 检测变量是否是浮点型
?is_int — 检测变量是否是整数
?is_integer — is_int 的别名
?is_long — is_int 的别名
?is_null — 检测变量是否为 NULL
?is_numeric — 检测变量是否为数字或数字字符串
?is_object — 检测变量是否是一个对象
?is_real — is_float 的别名
?is_resource — 检测变量是否为资源类型
?is_scalar — 检测变量是否是一个标量
?is_string — 检测变量是否是字符串
?isset — 检测变量是否设置
?print_r — 打印关于变量的易于理解的信息。
?serialize — 产生一个可存储的值的表示
?settype — 设置变量的类型
?strval — 获取变量的字符串值
?unserialize — 从已存储的表示中创建 PHP 的值
?unset — 释放给定的变量
?var_dump — 打印变量的相关信息
?var_export — 输出或返回一个变量的字符串表示
<?php // boolean $bFlag = true; if($bFlag) { echo '变量$bFlag为真'.'<br>'; } else { echo '变量$bFlag为假'.'<br>'; } // integer $iVal = 12345678; echo '十进制的结果'.$iVal.'<br>'; $a1 = 1234; // 十进制数 $a2 = -123; // 负数 $a3 = 0123; // 八进制数 (等于十进制 83) $a4 = 0x1A; // 十六进制数 (等于十进制 26) $large_number = 2147483647; echo var_dump($large_number).'<br>'; var_dump(25/7); // float(3.5714285714286) var_dump((int) (25/7)); // int(3) // float $fVal = 3.141592653; echo '变量$fVal的值是'.$fVal.'<br>'; // null $str1 = null; $str2 = 'str'; if(is_null($st1)) { echo '$str1为null'.'<br>'; } // 调试某个类型 echo gettype($str2).'<br>'; if(is_string($str2)) { echo '$str2为string类型'.'<br>'; } // 销毁对象 unset($str2); if(is_null($st1)) { echo '$str2为null'.'<br>'; } ?>
以上就介绍了PHP 数据类型,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP可以轻松创建互动网页内容。1)通过嵌入HTML动态生成内容,根据用户输入或数据库数据实时展示。2)处理表单提交并生成动态输出,确保使用htmlspecialchars防XSS。3)结合MySQL创建用户注册系统,使用password_hash和预处理语句增强安全性。掌握这些技巧将提升Web开发效率。

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP仍然具有活力,其在现代编程领域中依然占据重要地位。1)PHP的简单易学和强大社区支持使其在Web开发中广泛应用;2)其灵活性和稳定性使其在处理Web表单、数据库操作和文件处理等方面表现出色;3)PHP不断进化和优化,适用于初学者和经验丰富的开发者。

PHP在现代Web开发中仍然重要,尤其在内容管理和电子商务平台。1)PHP拥有丰富的生态系统和强大框架支持,如Laravel和Symfony。2)性能优化可通过OPcache和Nginx实现。3)PHP8.0引入JIT编译器,提升性能。4)云原生应用通过Docker和Kubernetes部署,提高灵活性和可扩展性。

PHP适合web开发,特别是在快速开发和处理动态内容方面表现出色,但不擅长数据科学和企业级应用。与Python相比,PHP在web开发中更具优势,但在数据科学领域不如Python;与Java相比,PHP在企业级应用中表现较差,但在web开发中更灵活;与JavaScript相比,PHP在后端开发中更简洁,但在前端开发中不如JavaScript。

PHP和Python各有优势,适合不同场景。1.PHP适用于web开发,提供内置web服务器和丰富函数库。2.Python适合数据科学和机器学习,语法简洁且有强大标准库。选择时应根据项目需求决定。

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

Atom编辑器mac版下载
最流行的的开源编辑器

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)