我正在研究一些旧的PHP,而且我还不是PHP顶级专家。
类中的某段代码使用数组参数调用方法:
$saleServers = $this->getSaleServers();
// Getting prices from cache or request
$prices = $this->getProductPrices($saleServers);
然而,该方法没有定义数组参数:
public function getProductPrices($getLicenseLifetime = true) { ... }
我的问题是:
PHP如何处理$saleServers
,是否会忽略它?如果是,我想我可以从函数调用中删除它。
对于$getLicenseLifetime
,PHP如何处理$saleServers
?它会混淆它们还是将它们分开(即PHP不会将$saleServers
分配给$getLicenseLifetime
,更正)?
答案 0 :(得分:1)
$getLicenseLifetime
将设置为$saleServers
的内容(如果您这样调用),如果省略参数,则为true
。
PHP是弱类型的,因此您可以使用任何类型的变量调用该函数,并且在函数内部可以检查包含参数的变量的类型,其中包含is_array()等函数.PHP5知道这个概念提示类型,主要用于对象(例如不支持标量),PHP7可以declare argument types。