2015-03-04 3 views
2

Я возвращаюсь простую функцию с двумя переменными,Ссылка на функцию возврата?

function checkerValidate(){ 
$emptyOrNot = ""; 
$validOrNot = ""; 

    if(!empty($_POST['domain'])) 
    {//not empty 
     $emptyOrNot = "notEmptyUrl";    
     if (filter_var($url, FILTER_VALIDATE_URL) === TRUE) { 
      $validOrNot = "validUrl"; 
     }else{ 
      $validOrNot = "notValidUrl"; 
     } 
    }else 
    {//empty 
     $emptyOrNot = "emptyUrl"; 
    } 
    return array($emptyOrNot, $validOrNot); 

} 

Для ссылки на две переменные вне функции я использую:

<?php echo checkerValidate()[0]; ?> 
<?php echo checkerValidate()[1]; ?> 

Я попытался и загрузить на сервер и он работал, однако я использую Dreamweaver IDE, и он утверждает, что checkerValidate() [0] и checkerValidate() [1] недопустимы.

Может ли кто-нибудь разъяснить это?

+2

Зачем вам это делать? Действительное выражение или нет ... вы вызываете и выполняете всю функцию каждый раз, когда хотите использовать любые значения! Не было бы проще назначить возвращаемое значение переменной, а затем использовать ее как обычный массив? Разумеется, если вам действительно нужно повторять его каждый раз. – AJPerez

+0

@AJPerez спасибо, будет использовать ваш путь, чтобы быть в безопасности – Vincent1989

ответ

1

Этот синтаксис действителен с PHP 5.4. Существует вероятность, что ваша среда IDE настроена на синтаксис, проверяя более низкую версию PHP, поэтому она считает, что это неправильно.

Ваш сервер, очевидно, имеет версию PHP, большую или равную 5.4, поэтому он работает очень хорошо (вы можете проверить, используя php -v).

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