php 难点,PHP知识难点TOP3,你都知道吗?

本文探讨了PHP中的难点,包括命名空间的使用,如何在闭包中通过`use`引用外部变量,以及Traits解决单继承限制的方法。通过命名空间,可以避免类名冲突;闭包中的`use`关键字允许访问外部变量;Traits则提供了一种多重继承的类似机制,用于组合类的方法。此外,文章还区分了错误和异常的区别,强调了异常处理的重要性。
摘要由CSDN通过智能技术生成

0983adb81e5f2fef36c9a2ee25437100.png

f9c95b5dd79144a187a6ebbb843ccab3.png

php虽然容易入门,但是要想深入,还是有些路要走的,今天我们就来聊聊php一些比较难理解的知识点。

use

70952dbe8075a25e5d9567aa8027e191.png

php从5.3.0开始引入了一个叫作命名空间的新特征,让我们能够定义相同的类和处理与第三方库同名类的时候有了很好的解决方案,在一个命名空间里面能够包括类、函数、接口和常量,有了命名空间以后,在其他地方需要使用命名空间时,需要使用use引入该命名空间或者为该命名空间定义一个别名再使用,这是use的第一种使用情况,特别注意的是,这里的use并没有将其对应的文件加载进来。在使用php的时候,我们发现有很多函数有一个回调函数的参数,我们可以使用匿名函数(也叫闭包来实现),同时,我们知道在php的函数里面无法直接用外部的变量,那么在闭包里面要使用外面的变量,怎么办呢?参考下面的例子,用use就可以做到,这是use的第二种用法。至于use的第三种用法请看下面的Traits。

Traits

36264f9def8610e116a1a4f6292345b3.png

我们知道,php不像C++一样,是多继承语言,它是一种单继承语言,如果有时我们需要继承多个类怎么办?这个时候Traits就上场了,我们仅仅需要在类中用use声明多个trait,这样当前类中的同名方法覆盖trait,而trait又覆盖基类中的同名方法,属性也是一样的。

错误和异常的区别

fb946d157c5f64612fcd876da4459f1f.png

不管是错误发生还是某种异常我们未捕获,我们的程序都会出现问题,而且不管是错误还是未捕获异常,二者的表现都是一样的,导致我们对错误和异常的理解总是很模糊,其实异常就是理论上程序没有问题,但是运行的时候,因为某些特殊的情况而终止了程序的运行,比如链接数据库的操作,如果一切都好,那么我们应该可以正常的链接数据库,但是当数据库的可用连接数没有了,或者无法链接数据库,那么这个时候,如果没有捕获这个异常,肯定是会出错的。

最后

如果大家觉得这篇文章还不错,请给予一个赞或者分享给你的好友,如果你有更多好的经验或问题,请在评论中和大家分享一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值