我有源代码,但我遇到了问题。
您可以在此处找到源代码:http://pastebin.com/6JHkTFEv
错误在于:http://i.imgur.com/V4pPZkI.png
为什么总是给我这个错误信息?
问题出在这一行:
public function upload_sms_data( $sms_id, $prefix, $uzenet, $telefonszam, $kategoria, $ip_address = $this->get_client_ip()) {
程序由最后一个参数停止:$ip_address = $this->get_client_ip()
我可以为方法提供默认参数吗?
答案 0 :(得分:0)
您不能将参数的默认值设置为函数调用的结果。它必须是一个价值。
答案 1 :(得分:0)
不,你不能那样做。最好的办法是将null
作为默认值,然后在方法内部(如果该参数为null)则使用getter。
upload_sms_data( $sms_id, $prefix, $uzenet, $telefonszam, $kategoria, $ip_address = null ) {
$ip_address = $ip_address === null ? $this->get_client_ip() : $ip_address;
}
答案 2 :(得分:0)
您可以提供默认值,但不能提供需要运行时计算或执行的默认值,例如函数调用的结果
public function upload_sms_data( $sms_id, $prefix, $uzenet, $telefonszam, $kategoria, $ip_address = NULL ) {
if ($ip_address === NULL) {
$ip_address = $this->get_client_ip();
}