Значение по умолчанию для метода, метода?

У меня есть исходный код, но у меня проблема с этим.

You can find the source code right here: http://pastebin.com/6JHkTFEv

Error is here: http://i.imgur.com/V4pPZkI.png

Почему всегда это сообщение об ошибке?

Проблема в этой строке:

public function upload_sms_data( $sms_id, $prefix, $uzenet, $telefonszam, $kategoria, $ip_address = $this->get_client_ip()) {

The program is stopped by the last parameter: $ip_address = $this->get_client_ip()

Могу ли я дать параметр по умолчанию методу метода?

0
nl ja de

3 ответы

Вы можете указать значение по умолчанию, но не такое, которое требует вычисления или выполнения во время выполнения, например, результата вызова функции

public function upload_sms_data( $sms_id, $prefix, $uzenet, $telefonszam, $kategoria, $ip_address = NULL ) { 
    if ($ip_address === NULL) {
        $ip_address = $this->get_client_ip();
    }
0
добавлено
Спасибо за ответ! Работает...
добавлено автор Ferenc Straub, источник

Нет, вы не можете этого сделать. лучше всего было бы иметь 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;
}
0
добавлено
Спасибо за ответ! Работает...
добавлено автор Ferenc Straub, источник

Вы не можете установить значение по умолчанию для аргумента как результат вызова функции. Это должно быть ценностью.

0
добавлено
Спасибо за ответ!
добавлено автор Ferenc Straub, источник
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp