1.echo和print的差异

PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。
echo输出后没有返回值,但print有返回值,当其实行失落败时返回flase。
因此可以作为一个普通函数来利用,例如实行下面的代码变量$r的值将为1。

这意味着print可用在一些繁芜的表达式中,而echo则弗成。
但是,由于echo语句不哀求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。

php混淆把this混淆了珍藏|PHP易混杂的技巧常识点 Docker

2.include与require的差异

include()与require()的功能也基本相同(包含),但在用法上也有一些不同,include()是有条件包含函数,而require()则是无条件包含函数。
例如不才面代码中,如果变量$a为真,则将包含文件a.php:

而require()则和include()不同,不管$a取何值,下面的代码将把文件a.php包含进文件里:

在缺点处理方面,利用include语句,如果发生包含缺点,程序将跳过include语句,虽然会显示缺点信息但是程序还是会连续实行!
但requre却会给你来个致命缺点。

当然,从字面意思上我们也可以理解七分:requre是很强硬的要求、哀求的意思。

3.require_once()和include_once()语句

题外话了,由于长的像,大略require_once()和include_once()语句分别对应于require()和include()语句。
require_once() 和include_once()语句紧张用于须要包含多个文件时,可以有效地避免把同一段代码包含进去而涌现函数或变量重复定义的缺点。

4.空字符串('')和NULL的差异

PHP中空字符串和NULL都因此值为0存储的,但是他们的类型并不一样,你可以试一下echo gettype('');和echo gettype(NULL);你会创造他们打印出来的分别是string和NULL,当然还有0也随意马虎稠浊,你可以试试echo gettype(0);打印一下类型,会创造0的类型是integer(整型),可见字符串('')、NULL和0是\"大众等值\"大众但不等类型。

5.self :: 和 this-> 的差异

在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须利用操作符::,反之如果被引用的变量或者方法没有被声明成const或者static,那么就必须利用操作符->。

其余,如果从类的内部访问const或者static变量或者方法,那么就必须利用自引用的self,反之如果从类的内部访问不为const或者static变量或者方法,那么就必须利用自引用的$this。

6.strstr() 与 strpos() 的差异

stristr() 不区分大小写 strstr() 区分大小写,函数查找字符串在另一个字符串中首次涌现的位置。

如果成功,则返回字符串的别的部分(从匹配点)。
如果没有找到该字符串,则返回 false。

经测试证明如果只是纯挚查找判断是否存在则strpos()的实行效率要大于strstr()

艾瑞巴得学起来吧,趁光阴刚好,趁机会依旧存在,千锋PHP培训助你一臂之力!