2016-03-19 3 views
0

Кто-нибудь знает этот синтаксис PHP-функций и как он работает? Это не работает с PHP 5,5Ошибка синтаксиса функции в PHP

public function getProxiesTargetDir() : string 
    { 
     return $this->proxiesTargetDir ?: $this->proxiesTargetDir = sys_get_temp_dir(); 
    } 
+0

'getSomething() {/ * Не материал здесь * /}' – Qirel

+1

что требует класс для работы с, видя "общественность". –

+0

Я знаю, что ребята, но внешняя библиотека имеет этот синтаксис. См. Edit –

ответ

4

Вы используете напечатанные возвраты public function getProxiesTargetDir() : string, которые only exists starting from PHP 7.

Для предыдущих версий просто удалить : string>public function getProxiesTargetDir() {}

+0

И если это внешняя библиотека, вам нужно использовать более старую версию, совместимую с PHP5. – ceejayoz

+0

Большое вам спасибо –

-1

Вы используете стенографии, если/иначе синтаксис PHP здесь, но давайте использовать длинный путь:

public function getProxiesTargetDir() 
{ 
    if($this->proxiesTargetDir == false){ 
      return ($this->proxiesTargetDir = sys_get_temp_dir()); 
    } 
    else{ 
      return $this->proxiesTargetDir; 
    } 
} 

Если также удалили :string, потому что он может делать ошибки, и здесь это не обязательно.

Смежные вопросы