PHP从零开始--基础篇

1.3.1值传递

在这里插入图片描述

在这里插入图片描述

总结:值传递相当于是复制了一份数据,对原来的进行任何操作不会影响后面的

1.3.2引用传递

在这里插入图片描述

在这里插入图片描述

总结:引用赋值是两个变量指向同一个数据,其中一个变化了,另外一个也会跟着变化

1.4预定义变量

在这里插入图片描述

二、 常量

2.1概念

常量里面存储的数据在脚本运行期间是不会改变的。常量名必须是大写的

2.2常量定义

在这里插入图片描述

2.3常量两种定义方式区别

const定义常量只能放在顶级目录,不能放在if语句或者function的{}的里面,define定义常量可以放在任何位置。

2.3内置常量

在这里插入图片描述

__LINE__和__DIR__因为会随着环境的变化而变化,所以又称为魔术常量。

三、 数据类型

3.1种类

442

四种标量:int(整数) float(浮点) string(字符串) bool(布尔)

两种复杂数据类型:Array(数组) Object(对象)

两种特殊的数据类型:null resource(资源)

3.2单引号和双引号的区别

1、单引号的效率要高

2、双引号可以解析变量,单引号不可以

在这里插入图片描述

3.3数据类型转换
3.3.1弱类型转换

(1)数字变字符串

在这里插入图片描述

(2)字符串变数字

在这里插入图片描述

3.3.2强制转换

在这里插入图片描述

在这里插入图片描述

3.4补充常用的方法

isset()判断变量是否存在

在这里插入图片描述

defined()判断常量是否存在

在这里插入图片描述

empty()判断变量是否为空

在这里插入图片描述

gettype()获取变量存储的数据类型

settype()强制设置变量里的数据类型

is_numeric()判断是否是数字

在这里插入图片描述

var_dump()打印详细的数据类型

四、 运算符

4.1算术运算符
4.1.1一元运算符

++ –

在这里插入图片描述

4.1.2二元运算符
      • / %
  • 在这里插入图片描述

注意%如果是小数的话是先向下取整然后再取余

4.2比较运算符

= < <= == === != !==

“17”==17 true

“17”===17 false

“17”!=17 false

“17” !==17 true

规律:

!=和==只判断值是否相等 !=不仅要判断值还要判断数据类型

4.3逻辑运算符

&& || !

true&&true true

false&& true false

true&&false false

false&&false false

&&的短路现象:一假为假 所以只要前面是false 整体结果为false

true||true true

true||false true

false||true true

false||false false

||的短路现象:一真为真 只要前面是真 整体结果为true

4.4赋值运算符

= += -= *= /= %=

4.5连接运算符

.

4.6三元运算符

表达式?表达式成立执行的结果:表达式不成立执行的结果

在这里插入图片描述

4.7运算符优先级

https://www.php.net/manual/zh/language.operators.precedence.php

在这里插入图片描述

1、+±-(有小括号先算小括号里面的)

2、!

3、* / %

4、+ -

5、比较运算符

6、赋值运算符

五、补充练习题

‘5.5’======5.5

‘5.5abc’=====5.5

‘’======0

‘abc5.5’======0

在这里插入图片描述

六、条件语句

6.1if语句
<?php // 如果当前时间是8点 开始早上上课 // 如果当前时间是12点 开始吃午饭 // 如果当前时间是14点 开始做下午练习 // 如果当前时间是18点 结束上课 // 如果都不满足 告诉今天没来上课 // echo time(); date_default_timezone_set('PRC'); // echo date('Y-m-d H:i:s',time()); $h=date('H',time()); if($h>=8&&$h<12){ echo '开始上早课'; }else if($h>=12&&$h<14){ echo '吃午饭'; }else if($h>=14&&$h<18){ echo '开始下午做练习'; }else if($h>=18&&$h<=24){ echo '下课啦'; }else{ echo '今天没来,白报名了'; **自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。** **深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!** **因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。** ![img](https://img-blog.csdnimg.cn/img_convert/8bc40b105e34a954fe5f8da7c3ba3fd5.jpeg) ![](https://img-blog.csdnimg.cn/img_convert/70ab1f755830e088da4d364d008c9822.png) **既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!** ![](https://img-blog.csdnimg.cn/img_convert/33d88a4153b20acb92d5edab5850728e.png) **由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!** **如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)** ![](https://img-blog.csdnimg.cn/img_convert/33cd7f048e3335f02e2b65c070aee719.jpeg) ### 结尾 学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。 [**资料领取方式:戳这里免费获取**](https://bbs.csdn.net/topics/618191877) ,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!** **如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)** [外链图片转存中...(img-CvL3Gsjv-1713550610413)] ### 结尾 学习html5、css、javascript这些基础知识,学习的渠道很多,就不多说了,例如,一些其他的优秀博客。但是本人觉得看书也很必要,可以节省很多时间,常见的javascript的书,例如:javascript的高级程序设计,是每位前端工程师必不可少的一本书,边看边用,了解js的一些基本知识,基本上很全面了,如果有时间可以读一些,js性能相关的书籍,以及设计者模式,在实践中都会用的到。 [**资料领取方式:戳这里免费获取**](https://bbs.csdn.net/topics/618191877) ![html5](https://img-blog.csdnimg.cn/img_convert/1171feea891d232fbc49739bcfa10ead.webp?x-oss-process=image/format,png)