Могу ли я использовать хеш-знак (#) для комментирования в PHP?
Я никогда не видел файл PHP с использованием хэшей (#
) для комментариев. Но сегодня я понял, что на самом деле могу! Я предполагаю, что есть причина, почему все используют //
вместо этого, поэтому я здесь.
Есть ли какая-либо причина, кроме личных предпочтений, использовать //
вместо #
для комментариев?
Ответы
Ответ 1
Ответ на вопрос Есть ли разница между использованием "#" и "//" для однострочных комментариев в PHP? нет
Нет никакой разницы. Смотря на часть синтаксического анализа исходного кода PHP, оба "#" и "//" обрабатываются одним и тем же кодом и, следовательно, имеют одинаковое поведение.
Ответ 2
Документация PHP описывает различные возможности комментариев. См. http://www.php.net/manual/en/language.basic-syntax.comments.php
Но он ничего не говорит о различиях между "//" и "#". Поэтому не должно быть технических различий. PHP использует синтаксис Си, поэтому я думаю, что именно поэтому большинство программистов используют комментарии в стиле С '//'.
Ответ 3
<?php
echo 'This is a test'; // This is a one-line C++ style comment
/* This is a multi-line comment.
Yet another line of comment. */
echo 'This is yet another test.';
echo 'One Final Test'; # This is a one-line shell-style comment
?>
RTM
Ответ 4
Есть ли какая-либо причина, помимо личных предпочтений, использовать//вместо # для комментариев?
Я думаю, что это только личное предпочтение. Между //
и #
нет разницы. Я лично использую #
для однострочного комментария, //
для комментирования кода и /** */
для комментариев блока.
<?php
# This is a one-line comment
echo 'This is a test';
// echo 'This is yet another test'; // commenting code
/**
* This is a block comment
* with multi-lines
*/
echo 'One final test';
?>
Ответ 5
Можно подумать, что форма комментирования #
в первую очередь предназначена для создания оболочки script с использованием знакомой нотации "shebang" (#!). В следующем script PHP должен игнорировать первую строку, потому что это также комментарий. Пример:
#!/usr/bin/php
<?php
echo "Hello PHP\n";
Если вы сохраните его в исполняемом файле, вы можете запустить его с терминала вроде этого
./hello
Выходной сигнал
Hello PHP
Однако это рассуждение неверно, как показывает следующий контрпример:
#!/usr/bin/php
#A
<?php
#B
echo "Hello PHP\n";
Первая строка (строка shebang) специально игнорируется интерпретатором. Строка комментария перед тегом PHP отражается на стандартном выходе, поскольку она не находится внутри тега PHP. Комментарий после открытия PHP-тега интерпретируется как PHP-код, но он игнорируется, потому что это комментарий.
Вывод пересмотренной версии
#A
Hello PHP
Ответ 6
Если вы устанавливаете некоторые наборы правил в своей команде/проекте... 2 типа комментариев могут использоваться для описания цели прокомментированного кода.
Например, мне нравится использовать #
для отключения/отключения настроек конфигурации, вспомогательных функций и, как правило, полезного или важного фрагмента кода, но в настоящее время отключается.
Ответ 7
Для этого нет официального PSR.
Однако во всех примерах кода PSR они используют //
для встроенных комментариев.
Там предлагается предложение расширения PSR-2, целью которого является его стандартизация, но оно не является официальным: https://github.com/php-fig-rectified/fig-rectified-standards/blob/master/PSR-2-R-coding- style-guide-additions.md # комментирование-код
//
чаще всего используется в культуре PHP, но также хорошо использовать #
. Мне лично это нравится, потому что оно короче и сохраняет байты. Это личный вкус и предвзятость, нет правильного ответа на него, пока, конечно, он не станет стандартом, и мы должны стараться следовать как можно больше.
Ответ 8
Да, однако есть различия между платформами.
Я использую # все время для комментариев в PHP, но я заметил разницу в принятии.
На клавиатуре Windows клавиша # проста в использовании. На клавиатуре Mac клавиатура в основном отсутствует.
Поэтому для пользователей Mac [Alt] + [3] или [⌥] + [3] сложнее напечатать, чем //, поэтому//стал перекрестным способом отображения кода с комментариями.
Это мое наблюдение.
Ответ 9
С https://php.net/manual/en/migration53.deprecated.php
"Устаревшие функции в PHP 5.3.x... Комментарии, начинающиеся с" # ", теперь не поддерживаются в файлах .INI".
Там у вас есть это. По умолчанию хэш '#' остается в качестве параметра комментария, но не считается устаревшим. Я планирую использовать его, чтобы различать различные уровни вложенных операторов if/else и отмечать их закрывающими скобками, или использовать для различения комментариев кода от закомментированного кода, как другие предлагали в соответствующих публикациях. (Примечание. Ссылка действительна/работает по состоянию на 23.04.199, хотя кто знает, будет ли она работать, когда вы ее читаете.)
Ответ 10
Могу ли я создать свои собственные символы комментариев в php для файлов php.ini? Скажем, я хочу использовать вместо # или//для комментариев. Как мне этого добиться?
Ответ 11
Есть ли какая-либо причина, кроме личных предпочтений, использовать//вместо # для комментариев?
Я пришел сюда за ответом сам, и это хорошо знать, что нет никакой разницы в коде.
Однако, с точки зрения предпочтений, можно утверждать, что вы бы предпочли последовательность комментариев [shell-> perl-> php ", а не способ [c-> php".
Так как я подходил к php как к web-perl для бедняков, я использовал #.. а потом я увидел чей-то другой код и пришел прямо к SO. ;)
Ответ 12
Могу ли я создать свои собственные символы комментариев в php для файлов php.ini? Скажем, я хочу использовать вместо # или//для комментариев. Как мне этого добиться? Я использую php 7.2.18.
Ответ 13
Комментарии с "#" устарели с помощью PHP 5.3. Поэтому всегда используйте//или/.../