文章更新于2020-03-17

一、基础知识

知识点 描述 备注
标记:XML风格 <?php echo "hello"; ?> 推荐
标记:脚本风格 <script language="php"> echo "hello"; </script>
标记:简短风格 <? echo "hello"; ?> 需要配置php.ini
标记:ASP风格 <% echo "hello"; %> 需要配置php.ini
注释 //...、/* ... */、#... 单行注释不能出现?>,否则会认为脚本结束而出错
8种数据类型 boolean布尔型、string字符串型、integer整型、float浮点型 4种标量类型
8种数据类型 array数组、object对象 2种复合类型
8种数据类型 resource资源、null空值 2种特殊类型
8种数据类型之 boolean:有true、false两个值 空值等也为false
8种数据类型之 string:'单引号、"双引号、<<<界定符 三种表示方法 单引号不进行变量替换
8种数据类型之 integer:整型只能包含整数
8种数据类型之 float:可用来存储整数或小数。
可使用标准格式和科学计数法格式。
4.0之前版本标识为 double,二者没有区别
8种数据类型之 array数组:一组类型相同的变量
8种数据类型之 object:对象对象是类的实例,使用 new 命令来创建。

二、知识点细节说明

(1)boolean 布尔型

1、boolean 有两个值 true 、 false。

2、0、0.0、“0”、空字符串、只声明但没赋值的数组等也为 false。

(2)string 字符串型

1、使用单引号只需对字符串中的单引号'进行替换,而双引号或界定符则还需要考虑变量。所以优先使用单引号。

2、换行\n、回车\r、水平制表符\t、反斜杠\\、美元符号\$、单引号\'、双引号\"、8进制符号字符\[0-7]{1,3}、16进制符号字符\x[0-9a-fA-f]{1,2} ,需要进行转义,后两个用于正则匹配。

3、界定符的使用

$string  = <<< str
这里面写要输出的字符
然后以界定符结束
结束界定符前不能有空格或其他字符
在这里面的变量会被替换成其值
str

(3)integer 整型

1、整型只能包含整数。

2、如果八进制中出现了 8 或 9 等非法字符,则后面的数字会被忽略掉。比如:02643898 等价于 02643。

3、如果数值超过了int能表示的最大值,则会被当为 float处理,这种情况成为 整数溢出。

(4)float 浮点型

1、有标准格式和科学计算法两种格式。

2、浮点型的数值是近似值,应尽量避免其比较大小。

(5)array 数组

1、数组包含多个值

# $arr1 = ('value1','value2');
$arr1 = ('hello','world');

2、数组可通过下标进行赋值

# key 是下标
# $arr2[key] = 'value';
$arr2[0] = 'hey';

3、数组可指定键名

# $arrayname = array(key1=>value1, key2=>value2);
$arr3 = array(0=>'php',1=>'is','ok'=>'good');

(6)object 对象

1、php 可任意使用面向对象和面向过程两种方法。

(7)resource 资源

1、资源使用过后系统会自动进行垃圾回收,避免内存消耗。

(8)null

1、null 不区分大小写。

2、没有赋值,被赋值 null,被unset()处理的值为 null。

3、unset() 就是从内存中删除变量。

(9)数据类型转换

转换操作符 转换类型 举例
(boolean) 转换成布尔型 (boolean)$num、(boolean)$str
(string) 转换成字符串型 (string)$boo、(string)$flo
(integer) 转换为整型 (integer)$boo、(integer)$str
(float) 转换为浮点型 (float)$str
(array) 转换为数组 (float)$str
(object) 转换为对象 (object)$str

1、转换成boolean时,等价于null的会被转换为false。

2、转换为integer时,flase转换为0,true转换为1,float浮点型的小数被舍去,字符型如果以数字开头就截取到非数字位,否则输出0。

3、类型转换还可以通过settype()函数来完成。

# bool settype(mixed var, string type)
$number = '3.14159';
echo settype($number, 'integer');
# 输出结果 1
# 因为 settype() 函数的返回值为布尔型

三、待续

PHP 学习笔记摘要的更多相关文章

  1. PostgreSQL学习笔记——摘要

    因为PostgreSQL和MySQL.DB2等数据库均遵循SQL语法,所以这篇随笔仅记录一些PostgreSQL中和别的数据库有差别或之前学习中遗漏的地方,以及一些我觉得比较重点的地方. 通过psql ...

  2. python + selenium 学习笔记 -摘要

    一.浏览器操作相关 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() # 窗口最大 ...

  3. Python学习笔记摘要(一)类型 字符串 函数 列表 深浅拷贝

    python中的对象和类型 在python中,认为系统中的每一个"东西"都是一个对象,在python中,"对象"有着特殊的意义,python中的对象有: 一个标 ...

  4. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要系列文章索引

    从发表第一篇文章到最后一篇文章,时间间隔有整整一个月,虽只有5篇文章,但每一篇文章都是我吸收<LEARNING HARD C#学习笔记>这本书的内容要点及网上各位大牛们的经验,没有半点废话 ...

  5. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要三

    最近工作较忙,手上有几个项目等着我独立开发设计,所以平时工作日的时候没有太多时间,下班累了就不想动,也就周末有点时间,今天我花了一个下午的时间来继续总结与整理书中要点,在整理的过程中,发现了书中的一些 ...

  6. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要二

    今天继续分享我的阅读<LEARNING HARD C#学习笔记>知识点总结与摘要二,仍然是基础知识,但可温故而知新. 七.面向对象 三大基本特性: 封装:把客观事物封装成类,并隐藏类的内部 ...

  7. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要一

    本人有幸在Learning Hard举行的整点抢书活动<Learninghard C#学习笔记>回馈网友,免费送书5本中免费获得了一本<LEARNING HARD C#学习笔记> ...

  8. 《软件调试的艺术》学习笔记——GDB使用技巧摘要

    <软件调试的艺术>学习笔记——GDB使用技巧摘要 <软件调试的艺术>,因为名是The Art of Debugging with GDB, DDD, and Eclipse. ...

  9. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置

    摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...

随机推荐

  1. js Array方法总结

    修改器方法(9) copyWithin(target: number, start: number, end?: number): this; // 浅复制数组的一部分到同一数组中的另一个位置,并返回 ...

  2. python中那些让开发事半功倍的模块

    1. Map Map会将一个函数映射到一个输入列表的所有元素上 ex: 有一个列表: [1,2,3,4,5,6], 现在要求把列表每个元素乘以10 如果你还不知道Map,那你可能会这样做: list1 ...

  3. 我用STM32MP1做了个疫情监控平台3—疫情监控平台实现

    目录 1.前言 2.数据接口的获取 3.Qt界面的实现 4.在开发板上运行Qt程序 5.使用无线模块联网 6.代码下载 @ 1.前言 之前我使用桌面版本Qt实现了肺炎疫情监控平台:基于Qt的新冠肺炎疫 ...

  4. Mol. Cell. Proteomics | 糖蛋白基因组学:一种常见的基因多态性影响人血清胎球蛋白/α-2-HS-糖蛋白的糖基化形式

    大家好,本次分享的是发表在Molecular & Cellular Proteomics上的一篇关于糖蛋白基因组学的文章,题目是Glycoproteogenomics: A Frequent ...

  5. python对目录下的文件进行 多条件排序

    在进入正题之前,先介绍一下基础知识: 1.sort(),方法:就是对列表内容进行正向排序,直接在原列表进行修改,返回的是修改后的列表 lists =[1, 5, 10, 8, 6]lists.sort ...

  6. CBV和APIView源码分析

    CBV源码分析 查看源码的方式,先查看自身,没有去找父类,父类没有就去找父父类... 自己定义的类 class Author(View): def get(self,request): back_di ...

  7. 动态规划-买卖股票的最佳时机 V

    2020-03-11 18:19:00 问题描述: 给出一个股票n天的价格,每天最多只能进行一次交易,可以选择买入一支股票或卖出一支股票或放弃交易,输出能够达到的最大利润值 样例 样例 1: 给出 ` ...

  8. Swagger2在DBA Service中生成RESTful API的实践

    目的与背景: 目的:对外暴露DBA Service必要的RESTful API,形成规整的API文档 背景:DBA Service后端采用Spring-boot,属于Spring家族,故生成API的工 ...

  9. Manjaro更新后 搜狗拼音输入法突然无法正常使用

    之前Manjaro已经用了很久了,很多该配置的都已经配置好了,但是搜狗拼音在系统更新后突然无法使用 1检查 如下依赖 2.检查配置文件 3.发现一切配置没问题,此时输入 sogou-qimpanel ...

  10. Android对话框(Dialog)

    Android对话框 前几天出差没有进行更新,今天写一下安卓中用的比较多的对话框——AlertDialog. dialog就是一个在屏幕上弹出一个可以让用户做出一个选择,或者输入额外的信息的对话框,一 ...