Home >Backend Development >PHP Tutorial >类中函数的参数能指定为类的属性吗,该怎么解决

类中函数的参数能指定为类的属性吗,该怎么解决

WBOY
WBOYOriginal
2016-06-13 11:57:501100browse

类中函数的参数能指定为类的属性吗
看到一个代码,说是类中的usbUSB函数的参数之一可以是上面的USB这个接口作为参数,如图,没听说过PHP函数中的参数这么使用呢,道理何在?

------解决方案--------------------
如果是颠覆了你的理解的话,那只能说明你的理解是有问题的
所以不是颠覆而应是增强了理解
比如 USB 类有一个 load 方法,而你
function useUSB($usb) {
  $usb->load();
}
这样定义,这样调用 $obj->useUSB('abc');
这就会在 $usb->load() 处出现 不存在 load 方法 的错误
于是你就需要在 $usb->load() 之前检查 $usb 是否是对象;是否存在 load 方法
而加上类型声明后,这个检查工作就由 php 解析器去完成了
------解决方案--------------------

引用:
你还是没有理解我所说的问题,我的意思是说函数useUSB这个函数中的第一个参数USB是接口类USB,我不理解的是这里,怎么函数的参数会是一个类呢?我从很多教程中所看到的,函数中的参数就是一个可量,你定义为多少,一调用就出来了,可是这个类,是怎么回事呢,很多教程中压根没有提到。就是举一反三吧,感觉也不可思议。我不理解的是这里。


function use(USB $usb){}
$usb是由USB类实例化的一个对象指针
比如 $usb1 = USB(); $usb2 = USB(); use($usb1); use($usb2);
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn