В PHP я использую пространства имен на уровне класса. Тем не менее, Netbeans продолжает указывать мне пространство имен и мои глобальные функции. Например, если я печатаю
str_replace('stuff');
то Netbeans предложит изменить его на:
\str_replace('stuff');
Является ли это рекомендацией PHP, или просто Netbeans чрезмерно усердны? Я не смог найти что-либо в документации PHP, которая говорит в любом случае.
Я не вижу, чтобы это вызывало проблемы с кодом. Тем не менее, неправильно игнорировать Netbeans, не зная, почему он рекомендует его в первую очередь. Но и это не кажется правильным, чтобы изменить мою практику кодирования, не зная, что это правильно.
Такой рекомендации нет в
Также не обязательно использовать глобальный идентификатор, поскольку PHP будет отбрасываться на определение глобальной функции, если в текущем пространстве имен нет функции этого имени.
С учетом сказанного, единственная причина добавления идентификатора – сделать его более явным, чтобы вы использовали фактическое глобальное значение, чтобы предотвратить случайные изменения поведения кода, когда кто-то добавляет функцию с тем же именем в текущее пространство имен.
Вы можете запросить в списке рассылки Netbeans дополнительную информацию о том, почему ваша IDE предлагает это.
Переусердствовать наверняка, но я не могу воспроизвести это Netbeans 7.0.1, с PHP Plugin 1.17.1. Во всяком случае, это не конвенция, и я бы не стал считать ее лучшей практикой.
Netbeans просто не выполняет документированные правила разрешения пространств имен, как задокументировано :
Другими словами, ваш код должен считаться идиоматическим на основе документированных правил.