阅读时长:10分钟编程
技术预备:PHP基础语法数组
经过上一篇的学习,相信童鞋们已经大概了解了PHP的变量和数组,这篇虽然叫进阶语法,但其实也仍是基础语法,只是为了和上一篇作一个区别。(在编程界再怎么高级的东西始终会在时间的车轮下变成基础)
bash
本节主要讲解PHP的运算符、函数和面向对象。框架
依照上一节的特性,一些太简单的如 $a=$b+$c;
这种基础操做就跳过了,咱们主要来说讲PHP的一些骚操做。编程语言
大部分现代编程语言的运算符在PHP都实现了,这里主要讲解一下弱类型语言特有的“==”和“===”运算符。函数
在强类型语言中通常只有“==”这种运算符,那么为何弱类型语言会须要“===”运算符呢?学习
这是由于在弱类型语言,如PHP中,当数字0和字符串“0”相比较的时候,PHP会自动的把字符串转换为数字再进行比较,也就是说 0=="0" 会返回true。(课外题:数字和字符串比较的时候,PHP是按什么规则来进行字符串的数字转换?)
ui
可是某些场景下,咱们除了进行数字比较之外,还须要精确的类型比较,这种时候就须要“===”运算符来处理了,使用“===”运算符PHP会先校验两边变量的类型,若是类型不相同则会直接返回false。this
同理,判断不等于也有“!=”和“!==”两种比较运算符。spa
课后习题:
FALSE=="";
0=="0abc";
0=="0123";
0==0.0;
0==[];
"0abc=="";
''=="";
若是这些能作到全对,那么这关你就跨过去了,须要答案的童鞋能够在公众号给赵童鞋留言哦。
在PHP中,全部函数都须要使用function关键字来标识。
如:
function fun(){
echo "HelloWorld!!!";
}
复制代码
在类里的方法则自带了$this变量,用来指示当前调用方法的对象。(课外题:童鞋们还记得以前讲解的函数和方法有什么区别吗?)
在许多编程语言中,方法调用都是使用“.”符号来完成的。
如:
this.sayHello();
但在PHP中,“.”运算符已经被用做字符串链接符了,因此须要使用->符号来进行方法的调用,这个符号是否是很是形象(简单粗暴)呢?
如:
$this->sayHello();
在函数这里我须要着重讲解一下,PHP中两个经常使用的内置函数empty()
和isset()
。
有许多刚入门PHP的童鞋可能会常常搞混这两个函数的使用区别。
首先是empty()
函数的官方解释:
如下的东西被认为是空的:
而后是isset()函数的官方解释:
可能有童鞋看完解释仍是一头雾水,其实他们的区别就是对于NULL
值的判断。
empty()
函数来判断。isset()
函数来判断。PHP的面向对象又是那些什么继承啊,多态啊,父类啊,子类啊,为何这么累啊的东西,和大部分编程语言的同样,我就不写了。
上面只是开玩笑的,面向对象是目前编程语言的一个趋势,甚至Javascript在ES6以后也支持了Class的写法。
可是直接来说面向对象我我的以为是很是枯燥的一件事情,并且对一个初学者讲构造函数、析构函数、继承、多态之类的东西会很容易绕晕,更多数的状况是只有“哦~原来这样,而后呢?”这种体会,没两天就忘光光了。
因此我认为面向对象这方面若是是有其余语言经验的童鞋,应该不太须要再重头学一遍,而初学者的话咱们在后面结合项目再来说解就会更加容易理解,并且体会也是彻底不同的。
PHP的语法讲解通过两个章节算是基本讲完了。
什么?你说就这么短?许多的教程语法都要讲四五节课以上?
那是很正常的,由于赵童鞋跳过了大量的细节,我认为入门一个新的知识应该只花20%的时间来学习80%常常用到的知识才是最高效的,大量的细节咱们在后面再来慢慢补充。
什么?你以为本身什么都没学到?
那也是很正常的,能过目一遍就所有理解所有掌握的人始终是很是少数的,许多知识都要通过大量的练习才能真正的领悟到。
后面的章节咱们就直接进入到框架的学习。
----- End -----
更多好文
请扫描下面二维码
欢迎关注~