Intereting Posts
Установка CodeIgniter в корневом каталоге и WordPress в подкаталоге $ result = mysql_query () Можно ли автоматически преобразовать Java-код в PHP? Каковы плюсы и минусы определения класса Controller через URL-адрес или наличие сценария для каждого контроллера? Неопределенная ошибка индекса в php с использованием ajax Как переписать URL-адрес в php, используя файл htaccess. какое изменение в php-коде Лучший способ автоматического удаления комментариев из PHP-кода Прозрачная PNG над JPG в PHP HTML – Изменить \ Обновить содержимое страницы без обновления \ перезагрузки страницы Как отсортировать массив на основе определенного поля в массиве? jquery 'variable' to php 'variable' Скрыть узлы Drupal из поиска Почему MySQL-соединение блокируется из-за многих ошибок подключения? как использовать JQuery AJAX в компонентах Joomla? Каков самый быстрый способ выбрать ближайшее географическое место из базы данных mysql?

Символ «В» перед именем переменной в PHP: @ $ _ POST

Я видел вызовы функций, которым предшествует символ, чтобы отключить предупреждения. Сегодня я просматривал код и нашел это:

$hn = @$_POST['hn']; 

Какая польза от этого?

@ – оператор подавления ошибок в PHP.

PHP поддерживает один оператор управления ошибкой: знак at (@). При добавлении выражения в PHP любые сообщения об ошибках, которые могут быть сгенерированы этим выражением, будут игнорироваться.

Видеть:

  • Операторы контроля ошибок
  • Плохое использование оператора @

Обновить:

В вашем примере он используется перед именем переменной, чтобы избежать ошибки E_NOTICE . Если в массиве $_POST ключ hn не установлен; он E_NOTICE сообщение E_NOTICE , но @ используется там, чтобы избежать этого E_NOTICE .

Обратите внимание, что вы также можете поместить эту строку поверх своего сценария, чтобы избежать ошибки E_NOTICE :

 error_reporting(E_ALL ^ E_NOTICE); 

Он не будет вызывать предупреждение, если $ _POST ['hn'] не установлен.

Все это означает, что если $ _POST ['hn'] не определен, то вместо того, чтобы бросать ошибку или предупреждение, PHP просто назначит NULL $ hn.

Он подавляет предупреждения, если $ _POST ['something'] не определен.