PHP表达式_3_5_数据类型转换_类型自动转换
时间:2019-11-06
本文章向大家介绍PHP表达式_3_5_数据类型转换_类型自动转换,主要包括PHP表达式_3_5_数据类型转换_类型自动转换使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
以下为书上例程
PHP类型转换分为类型自动转换和类型强制转换。
1.布尔型数据参与算数运算时,TRUE被转换为整数1,FALSE被转换为整数0;NULL参与算术运算时,被转换为整数0。
1 <?php 2 $a = TRUE; 3 $b = FALSE; 4 $c = NULL; 5 $d = $a + 1; 6 $e = $b + 1; 7 $f = $c + 1; 8 9 var_dump($d); //int 2 10 echo "<br/>"; 11 var_dump($e); //int 1 12 echo "<br/>"; 13 var_dump($f); //int 1 14 echo "<br/>"; 15 ?>
输出:
1 D:\wampServer\www\Apache服务器主目录\practise\例程.php:8:int 2 2 3 D:\wampServer\www\Apache服务器主目录\practise\例程.php:10:int 1 4 5 D:\wampServer\www\Apache服务器主目录\practise\例程.php:12:int 1
2.浮点数与整数进行算术运算时,将整数转换为浮点数后,再进行算术运算。
程序:
1 <?php 2 $a = TRUE; 3 $b = FALSE; 4 $c = $a + 1.0; 5 $d = $b + 1.0; 6 7 var_dump($c); //float 2 8 echo "<br/>"; 9 var_dump($d); //float 1 10 echo "<br/>"; 11 ?>
输出:
1 D:\wampServer\www\Apache服务器主目录\practise\例程.php:7:float 2 2 3 D:\wampServer\www\Apache服务器主目录\practise\例程.php:9:float 1
3.参与算术运算的字符串,只有以数字开头的字符串才会被认作数字。
程序:
1 <?php 2 $a = 1; 3 $b = "-4.01"; 4 $c = "4.2e6"; //算术运算时,将被转换成4200000 5 $d = "-4.1degree"; //算术运算时,将被转换成 -4.1 6 $e = $a + "6th"; //算术运算时,将被转换成 6 7 $f = $a + $b; 8 $g = $a + $c; 9 $h = $a + $d; 10 $i = $a + "degree"; //算术运算时,"degree"将被转换成 0 11 12 var_dump($e); //int 7 13 echo "<br/>"; 14 var_dump($f); //float -3.01 15 echo "<br/>"; 16 var_dump($g); //float 4200001 17 echo "<br/>"; 18 var_dump($h); //float -3.1 19 echo "<br/>"; 20 var_dump($i); //int 1 21 ?>
输出:
1 D:\wampServer\www\Apache服务器主目录\practise\例程.php:12:int 7 2 3 D:\wampServer\www\Apache服务器主目录\practise\例程.php:14:float -3.01 4 5 D:\wampServer\www\Apache服务器主目录\practise\例程.php:16:float 4200001 6 7 D:\wampServer\www\Apache服务器主目录\practise\例程.php:18:float -3.1 8 9 D:\wampServer\www\Apache服务器主目录\practise\例程.php:20:int 1
4.在进行字符串连接运算时
①整数、浮点数将被转换成字符串类型数据。
例如,12.3转换为字符串后为“12.3”。
②布尔型TRUE将被转换成字符串“1”,布尔型FALSE跟NULL将被转换成空字符串“”。
程序:
1 <?php 2 $a = 1; 3 $b = 1.02; 4 $c = TRUE; 5 $d = FALSE; 6 $e = NULL; 7 $f = "degree"; 8 $g = $a.$f; 9 $h = $b.$f; 10 $i = $c.$f; 11 $j = $d.$f; 12 $k = $e.$f; 13 var_dump($g); //string '1degree' (length=7) 14 echo "<br/>"; 15 var_dump($h); //string '1.02degree' (length=10) 16 echo "<br/>"; 17 var_dump($i); //string '1degree' (length=7) 18 echo "<br/>"; 19 var_dump($j); //string 'degree' (length=6) 20 echo "<br/>"; 21 var_dump($k); //string 'degree' (length=6) 22 echo "<br/>"; 23 ?>
输出:
1 D:\wampServer\www\Apache服务器主目录\practise\例程.php:13:string '1degree' (length=7) 2 3 D:\wampServer\www\Apache服务器主目录\practise\例程.php:15:string '1.02degree' (length=10) 4 5 D:\wampServer\www\Apache服务器主目录\practise\例程.php:17:string '1degree' (length=7) 6 7 D:\wampServer\www\Apache服务器主目录\practise\例程.php:19:string 'degree' (length=6) 8 9 D:\wampServer\www\Apache服务器主目录\practise\例程.php:21:string 'degree' (length=6)
5.在进行逻辑运算时,空字符串“”、字符串零“0”、整数0、浮点数0.0、NULL以及空数组array()将被转换成布尔型为FALSE,其他数据将被转换成布尔型TRUE(注意字符串“0.0”将被转换成布尔型TRUE)。
程序:
1 <?php 2 $a = ""; 3 $b = "0"; 4 $c = "0.0"; 5 $d = 0; 6 $e = 0.0; 7 $f = NULL; 8 $g = array(); 9 $h = $a && TRUE; 10 $i = $b && TRUE; 11 $j = $c && TRUE; 12 $k = $d && TRUE; 13 $l = $e && TRUE; 14 $m = $f && TRUE; 15 $n = $g && TRUE; 16 17 var_dump($h); //boolean false 18 echo "<br/>"; 19 var_dump($i); //boolean false 20 echo "<br/>"; 21 var_dump($j); //boolean true 22 echo "<br/>"; 23 var_dump($k); //boolean false 24 echo "<br/>"; 25 var_dump($l); //boolean false 26 echo "<br/>"; 27 var_dump($m); //boolean false 28 echo "<br/>"; 29 var_dump($n); //boolean false 30 echo "<br/>"; 31 ?>
输出:
1 D:\wampServer\www\Apache服务器主目录\practise\例程.php:17:boolean false 2 3 D:\wampServer\www\Apache服务器主目录\practise\例程.php:19:boolean false 4 5 D:\wampServer\www\Apache服务器主目录\practise\例程.php:21:boolean true 6 7 D:\wampServer\www\Apache服务器主目录\practise\例程.php:23:boolean false 8 9 D:\wampServer\www\Apache服务器主目录\practise\例程.php:25:boolean false 10 11 D:\wampServer\www\Apache服务器主目录\practise\例程.php:27:boolean false 12 13 D:\wampServer\www\Apache服务器主目录\practise\例程.php:29:boolean false
原文地址:https://www.cnblogs.com/xiaoxuStudy/p/11800095.html
- 14(01)正则表达式,Pattern,Mactcher,Math,BigInteger,BigDeximal,System等
- oracle的TAF浅析 (r6笔记第37天)
- R语言高级绘图命令(标题-颜色等)
- 14(02)正则表达式,Pattern,Mactcher,Math,BigInteger,BigDeximal,System等
- R语言 判别分析
- Apache、struts1、struts2文件上传下载的3种方式
- 解析实时的DB time过程分析(r6笔记第35天)
- sql嵌入html格式显示报表(r6笔记第34天)
- hive计算日期差函数datediff,hive修改日期连接符
- 深度学习界的 “吃鸡挂”——目标检测 SSD 实验
- Hadoop查看所有JOB以及如何Kill指定用户的所有Job
- Java基础-23(01)总结多线程,线程实现Runnable接口,线程名字获取和设置,线程控制,线程安全,同步线程
- ORA-01427问题的分析和解决(r6笔记第51天)
- 从编程实现角度学习 Faster R-CNN(附极简实现)
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC