PHP中类型转换 ,常量,系统常量,魔术常量的详解


Posted in PHP onOctober 26, 2017

PHP中类型转换 ,常量,系统常量,魔术常量的详解

1.自动类型转换;

在运算和判断时,会进行自动类型转换;
1)其他类型转为bool,判断时转换;
  1)整型转布尔型:0转false,非0转为true;
  2) 空字符串和‘0'(“0”)转为false,其他转为true;
  3) 空数组转为false, 非空数组则转为true;
  4) null转为false
  5) 资源打开不成功为false 
    是0或空,打开不成功的转为‘false','0';
2)其他类型转为字符串(字符串拼接);
  null bool int float
  1) null转换为空串(空串不显示)
  2)整数直接转换为对应字符串 5=>'5';
  3)实数直接转换为对应的字符串,但尾0不转(实数小数点最后的0);
  4)true转换为'1‘,false转为空串;
字符串、布尔、整型、浮点、null
3) 运算时发生的类型转换
  1)true/false转换1/0;
  2)null转换为0;
  3)字符串开头的部分的数值换为对应数值;
  4)字符串开头没数值则直接转为0;
  (null,string,bool) < int < float

2、强制类型转化

就是手动的把一个类型的值转换为另一个类型的值;
  1、类型转化函数 intval ,strval, floatval
    $num1 = 1.2;
    $num2 = strval($num1); //吧$num1的值转换为字符串;
    var_dump($num1); 
    var_dump($num2); 
  2、(类型)$变量  不能转为resource
    $num2 = (unset)$num2;转为空
  3、settype(变量,类型) 类型必须写成字符串;
    改变变量的类型和值;
  注意事项
    1)浮点数转整数,直接干掉小数;
    2) echo(int)($num1 + 0.5); 四舍五入

3、常量

1)常量定义
  define(常量名,常量值)
  define(‘SONG',22);
注意:
  1)常量名是字符串;
  2)常量值必须是标量
  3)常量名一般大写,和变量做区别;
  4)常量名和变量名,命名规则相同;
2)系统常量
  __LINE__ 当前行号
  __FILE__ 当前文件的名称
  __DIR__ 当前文件的目录;
  PHP_OS  操作系统
  PHP_VERSION php的版本

魔术常量:
__FUNCTION__ 函数名
__FUNCTION__函数名;
__CLASS__ 类名
__CLASS__ 类名
__METHOD__方法名
__METHOD__方法民
__NAMESPACE__ :名空间
__NAMESPACE__ 名空间;
3)常量判断
  defined(常量名) 常量名必须是字符串;
  判断是否定义过常量;

4.运算符和表达式;

1)算数运算符 + - (乘法) /(除法) % .
%求模/取余
0 % 3 = 0
12 % 10 = 2
5 % 19 = 4
1 % 3 = 1;
2 % 3 = 2;
3 % 3 = 0;
-9 % 4 = -1
9 % -4 = 1;
模运算的结果的符号取决于第一个数。
判断奇偶
X%2 == 0 为偶数,能整除
X%2 != 0 则为奇数,不能整除
2 * 3 = 8
指数运算;
2 3 = 8;
3 2 = 9;

如有疑问请留言或到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
php Sql Server连接失败问题及解决办法
Aug 07 PHP
PHP的基本常识小结
Jul 05 PHP
php检测网页是否被百度收录的函数代码
Oct 09 PHP
php switch语句多个值匹配同一代码块的实现
Mar 03 PHP
PHP向浏览器输出内容的4个函数总结
Nov 17 PHP
PHP获取ip对应地区和使用网络类型的方法
Mar 11 PHP
纯PHP代码实现支付宝批量付款
Dec 24 PHP
PHP+MySQL统计该库中每个表的记录数并按递减顺序排列的方法
Feb 15 PHP
PHP模板引擎Smarty内建函数section,sectionelse用法详解
Apr 11 PHP
Laravel如何自定义command命令浅析
Mar 23 PHP
php快速导入大量数据的实例方法
Sep 23 PHP
phpstorm激活码2020附使用详细教程
Sep 25 PHP
利用php获得flv视频长度的实例代码
Oct 26 #PHP
PHP 中魔术常量的实例详解
Oct 26 #PHP
yii框架redis结合php实现秒杀效果(实例代码)
Oct 26 #PHP
PHP对象的浅复制与深复制的实例详解
Oct 26 #PHP
PHP中的浅复制与深复制的实例详解
Oct 26 #PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 #PHP
thinkPHP5分页功能实现方法分析
Oct 25 #PHP
You might like
自制汽车收音机天线:收听广播的技巧和方法
2021/03/02 无线电
PHP Socket 编程
2010/04/09 PHP
PHP删除数组中的特定元素的代码
2012/06/28 PHP
php操作csv文件代码实例汇总
2014/09/22 PHP
PHP四舍五入、取整、round函数使用示例
2015/02/06 PHP
如何通过Linux命令行使用和运行PHP脚本
2015/07/29 PHP
PHP处理数组和XML之间的互相转换
2016/06/02 PHP
Javascript 面向对象编程(coolshell)
2012/03/18 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
2012/05/23 Javascript
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
在JS中如何调用JSP中的变量
2014/01/22 Javascript
js控制再次点击按钮之间的间隔时间可防止重复提交
2014/08/01 Javascript
jQuery中appendTo()方法用法实例
2015/01/08 Javascript
jQuery获取样式中颜色值的方法
2015/01/29 Javascript
jQuery替换textarea中换行的方法
2015/06/10 Javascript
jQuery原型属性和原型方法详解
2015/07/07 Javascript
Bootstrap Table使用心得总结
2016/11/29 Javascript
React 路由懒加载的几种实现方案
2018/10/23 Javascript
nestjs返回给前端数据格式的封装实现
2021/02/22 Javascript
在Python的web框架中配置app的教程
2015/04/30 Python
python实现图像识别功能
2018/01/29 Python
Django model反向关联名称的方法
2018/12/15 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
Python2与Python3的区别实例总结
2019/04/17 Python
Python实现多线程/多进程的TCP服务器
2019/09/03 Python
django inspectdb 操作已有数据库数据的使用步骤
2021/02/07 Python
宝拉珍选澳大利亚官方购物网站:Paula’s Choice澳大利亚
2016/09/13 全球购物
Clearly澳大利亚:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
美国男士和女士奢侈品折扣手表购物网站:Certified Watch Store
2018/06/13 全球购物
美国职棒大联盟的官方手套、球和头盔:Rawlings
2020/02/15 全球购物
光声世纪笔试题目
2012/08/25 面试题
会计职业生涯规划范文
2014/01/04 职场文书
服务承诺书怎么写
2014/05/24 职场文书
2015年电气技术员工作总结
2015/07/24 职场文书