Возможный дубликат:
Ссылка. Что означает этот символ в PHP?
У меня есть это задание:
$buffer=@data_value[$i];
что означает @?
Это предотвращает появление любых предупреждений или ошибок при доступе к i му элементу data_value .
Подробнее см. В этом сообщении.
@ Будет подавлять ошибки о том, что переменная не инициализируется (будет оцениваться как null ).
Кроме того, у вашего кода, вероятно, отсутствует $ after @:
$buffer=@$data_value[$i];
Он называется «оператором управления ошибками». Поскольку это задание, я считаю, что вы должны сделать все остальное самостоятельно.
Как и выше, он подавляет ошибку, если ключ массива не существует. Версия, которая будет делать то же самое, не прибегая к изворотному подавлению ошибок, – это
$buffer = array_key_exists($i, $data_value) ? $data_value[$i] : null;
@ перед оператором означает, что никаких предупреждений / ошибок не следует сообщать из результата этого утверждения. Проще говоря, для этого утверждения подавляется сообщение об ошибках .
Это особенно полезно, когда, например, @fclose(fopen("file.txt",w")) который может @fclose(fopen("file.txt",w")) несколько предупреждений / ошибок в зависимости от ситуации, но с @ перед ним все эти предупреждения или ошибки будут подавлено.