php数据类型以及运算

什么是PHP?     拍黄片。     HTML:HyperText Mark-up Language 超文本标记语言     PHP(PHP:Hypertext Preprocessor )超文本预处理器,是一种运行在服务器端的脚本语言,尤为适合web开发。 PHP能干什么?     收集表单数据     生成动态网页     收发cookies     跨平台运行     输出图像     文件处理     处理XML格式的数据     处理JSON格式的数据     会话跟踪     。。。。。     服务端脚本,用于写web网页(主攻)CGI     命令行脚本,CLI     编写桌面应用程序 PHP的特色     跨平台运行     开源免费         http://www.github.com     支持大多数的web服务器     支持很大范围的数据库 PHP的发展史     1995年由Lerdorf(PHP之父)发明     1998年PHP3发布     2000年PHP4发布,开始引入面向对象的思想(半成品)     2004年PHP5发布,彻底的支持面向对象思想         5.4或者5.6最稳定     2015年12月3号直接发布了PHP7,速度翻了一倍 第一个PHP文件     1.环境装好以后,进入到网站根目录(www,若是不是wampserver,有多是htdoc)     2.新建的文件后缀名必定是.php,文件名不能是中文的     3.写php代码:phpinfo();     4.在浏览器中访问文件:http://localhost:80/demo.php HTML中嵌套PHP代码:     1.文件后缀必须是php     2.能够嵌套到任何地方:body中、html以外、属性中、css中     3.PHP代码必须被<?php ?>所包裹 PHP的标记     1.标准风格(经常使用)         <?php php代码 ?>     5.<?= 是echo的简写(经常使用)         <?='123';?> 至关于 <?php echo '123'; ?>     2.长风格(废物!!!!)         <script language="php">php代码</script>     3.短风格(废物!!!!)         <? php代码 ?>         须要在php.ini中开启short_open_tag(将它设置为on,默认为off)     4.asp风格(废物!!!!)         <% php代码 %>         须要在php.ini中开启asp_tag(将它设置为on,默认为off)     注意:         PSR规范中,只容许使用<?php ?>和<?= ?>这两种         若是是纯php文件,标准风格的结束标记能够不写 指令分隔符     PHP中语句分为两种         1.结构定义语句             流程控制、分支、循环、函数。。。用大括号标识,能够不加分号         2.功能执行语句             输出、变量定义、函数调用。。。后面必须加上分号     提示:php的结束标记中隐含了一个分号,最后一条语句能够不加分号 PHP中的注释     注释掉的代码,PHP都会忽略解析     1.//单行注释         //注释内容。。。     2.多行注释         /*             注释内容          */     3.#单行注释         # 注释内容。。。 PHP中对空白符的处理     PHP会忽略空格、换行、tab制表符的解析,因此能够利用这个特色写出可读性比较高的代码     要求:php代码必需要按照严格的缩进;PSR规范规定,缩进只能4个空格(由于tab制表符的宽度,编辑器解释不同,不利于代码的移植) 变量     什么是变量?         变量是用于临时存储值的容器         值能够是数字、文本或者其余一些比较复杂数据(数组、对象)     变量的特性         PHP是弱类型的语言,没必要告知变量的类型是什么,它会根据存储的值来决定这个变量是什么类型的     *变量的命名规范:         1.必须以$开始,后面跟变量名         2.变量名由字母、数字或者下划线_组合而成         3.不能以数字开头         4.严格区分大小写         5.能够是中文,可是别让我看到这种代码,否则罚抄10000遍 PHP中的数据类型     4种标量类型         boolean     布尔型             只有两个值,要么是true,要么是false             一般用于if判断,其余类型转换为布尔型获得false的状况:                 布尔型:false                 字符串:''  '0'                 整型:0 -0                 浮点型:0.0                 数组:array() 空数组                 null:null(包括未定义的变量)             其余全部值都被认为是true         integer     整型             1.整型值可使用十进制,十六进制,八进制或二进制表示,前面能够加上可选的符号(- 或者 +)。                  八进制表达,数字前必须加上0(零)                 十六进制表达,数字前必须加上 0x                 二进制表达,数字前必须加上 0b             2.PHP中整型的字长用PHP_INT_SIZE表示,通常占4个字节             3.整型的取值范围:PHP_INT_MAX 正负二十多个亿!超出取值范围自动转换为浮点型                 -2147483647~2147483647         float       浮点型             1.浮点数,就是有小数点的数,一般用来表示整数没法表达的数值,好比金钱值、距离值、速度值             2.能够用科学计数法来表示             3.在PHP中float也有最大数,1.8e308             4.浮点数的精度有问题             5.将浮点数取整的函数                 round()     四舍五入                 floor()     舍去取整                 ceil()      进一取整         string      字符串类型             定义方式:                 1. 单引号                 2. 双引号                 3. heredoc 定界符方式                 4. nowdoc(5.3以上)             单双引号的区别:                 一、双引号能够解析变量;单引号不能解析变量,会原样输出;                 二、双引号能够解析转义字符;单引号只能转义\\和\'自己;                 三、单双引号都不能本身嵌套本身,能够互相嵌套             转义字符:                 \r  回车                 \n  换行                 \t  制表符                 \\  斜线自己             heredoc和nowdoc                 heredoc定界符能够嵌套单双引号,能够解析变量和转义字符                 nowdoc能够嵌套单双引号,不能解析变量和转义字符             建议:尽可能使用单引号,效率略高     2种复合类型         array       数组类型         object      对象类型     2种特殊类型         resource    资源类型         null        空             只有一个值,就是null自己             获得null的状况:                 一、直接赋值为null                 二、未被赋值的变量,默认值也是null                 三、被unset()删除掉的变量也是null     PHP中的伪类型(看手册,var_dump()),并非PHP的原始数据类型         mixed:表明这个参数能够是多种不一样的类型         number:表明这个参数能够是int或者float             pow()         callback:还有个别名叫callable,表明这个参数必须是一个函数(回调函数)             call_user_func()、session_set_save_handler()         void:表明这个函数不接收任何参数;若是做为返回值,表示这个返回值是无用的             time( void )             var_dump()             unset()     PHP中的类型转换         强制转换             (int)/(integer)     强制转换为整型             (bool)/(boolean)    强制转换为布尔型             (float)             强制转换为浮点型             (string)            强制转换为字符串             (array)             强制转换为数组             (object)            强制转换为对象             (unset)             强制转换为null         自动转换             布尔环境             数值环境             字符串环境     数据类型的判断:         is_bool()       检测变量是不是布尔型         is_string()     检测变量是不是字符串类型         is_int()        检测变量是不是整型         is_float()      检测变量是不是浮点型         is_array()      检测变量是不是数组类型         is_object()     检测变量是不是对象类型         is_resource()   检测变量是不是资源类型         is_null()       检测变量是不是null空类型         is_scalar()     检测变量是不是标量类型(int、float、string、boolean)         is_numeric()    检测变量是不是数字或数字字符串         gettype($a)   获取变量的类型         settype($a, 'bool')   设置变量的类型(相似于强制转换) 常量     常量         汉语字典中第1条解释:长久,经久不变,常量也就是恒量         一经定义,不能删除和改变。     常量的定义:         define             define('常量名', 常量值);         const             const 常量名 = '常量值';         常量名:             和变量名同样,只能是数字、字母或下划线;             不能以数字开头 (定义的时候能够,但用不了)             严格区分大小写(define能够经过第3个参数指定是否区分大小写,true不区分)         常量值:             define定义的常量,除了object以外,均可以;(数组是PHP7新加的)             const定义的常量值,不能是资源和对象;     define和const的区别:         const可在类中使用,define不能         const不能在条件语句中定义常量         const采用一个普通的常量名称,define能够采用表达式做为名称         const只能接受静态的标量,而define能够采用任何表达式         const定义的常量时大小写敏感的,而define可经过第三个参数(为true表示大小写不敏感)来指定大小写是否敏感。     提示:echo一个未定义的常量时,会报一个notice并将常量名自动转换为字符串输出;     defined(常量名)         用于检测常量是否认义     预约义常量:get_defined_constants()获取当前已经定义好的常量!         PHP_INT_MAX         PHP_INT_SIZE         PHP_VERSION         ...     魔术常量:         值会随着环境的变化而改变         __LINE__    当前行号         __FILE__    当前文件         __DIR__     当前文件的目录         __CLASS__         __METHOD__         __NAMESPACE__         。。。 运算符     运算符是能够经过给出的一个或多个值来产生另外一个值的东西;     有3种类型的运算符         一元运算符             只可以接收1个值参与运算的叫一元运算符             1   -1  负值运算符 ++  --  !         二元运算符             2 + 2  算术运算符 + - * /         三元运算符             3   能够接收3个值的就是三元运算符           算数运算符         +  -  *  /         %   取余(取模)运算             39 % 3 == 0     求两个数相除的余数;39除以3余数为0     递增递减运算         ++             $i++;  //后递增: 先返回$i,再将$i的值加1,下次用的时候值就是加1后的             ++$i;  //前递增:先将$i的值加1,而后返回加过1后的$i         --             $i--;   //同上             --$i;         提示:对布尔值无效     字符串运算符         .   将其左右参数进行拼接运算         .=  将右边参数,附加到左边参数以后     赋值运算符         =             将右边的表达式的值,赋值给左边的变量         +=             $a += 3;    //将$a加上3以后再赋值给$a,能够拆为$a = $a + 3;         -=  *=  /=  %=     比较运算符         >       大于         <       小于         >=      大于等于         <=      小于等于         ==      等于         ===     全等于         != | <> 不等于         !==     不全等于     逻辑运算符:         逻辑与:&&  and             想娶大家丹姐,你要有房,而且还要有车!             洗脸:左脸和右脸             只有两边都为true,才返回true,不然返回false         逻辑或:||  or             想娶凤姐,要么你财大,要么你器粗!             丢钱包:你找到了,或者我找到了             只要有任何一边为true,结果就为true;             注意:前面为true,后边就再也不执行,俗称短路         逻辑非  !             小星星原本是纯爷们(true),去了趟泰国,被砍了一刀(false),就不纯了             就是取反的意思                 $bool = true;                 !$bool == false         逻辑异或 xor             男(true)男(true)不能结婚;             女(false)女(false)也不能结婚             两边不同才返回true,不然返回false     位运算符(了解)         按位与     &         按位或     |         按位异或   ^         左移       <<         右移       >>         按位非     ~     其余运算符         ?: 三元运算符             表达式1 ? 表达式2 : 表达式3;             1为真就执行2,为假就执行3;         @  错误控制符,能够屏蔽错误         `` 执行运算符,能够执行一些操做系统的命令         //别急,讲到相应知识点的时候会补充讲解         =>  数组下标指定符号         ->  对象成员访问符         instanceof 类型运算符
相关文章
相关标签/搜索