Существуют ли полезные соглашения об именах PHP? - PullRequest
2 голосов
/ 23 декабря 2009

Я пришел из Java / Objective-C в PHP и нахожу его ужасный . Я имею в виду, что PHP хорош, правда. Но когда вы смотрите на группу переменных, вы не знаете: это число? Это строка? Или это даже причудливый объект, который может выполнять действия при вызове методов над ним?

Поэтому мне интересно, существуют ли полезные соглашения об именовании для повторного использования переменных, чтобы помочь выяснить, является ли что-то объектом, или что-то просто скучная переменная. Я бы сказал, что если что-то является объектом, то есть экземпляром класса, первый символ должен быть БОЛЬШИМ. Но это всего лишь предположение. Надеюсь прочитать несколько советов от профессионалов PHP: -)

Ответы [ 6 ]

10 голосов
/ 23 декабря 2009

Как и в других языках, в PHP нет единого стандарта кодирования. Вы можете, среди прочего (см. Комментарии), проверить стандарты кодирования Zend , они весьма высоко ценятся, поскольку они очень близки (и частично идентичны) команде разработчиков ядра PHP.

3 голосов
/ 23 декабря 2009

Что мешает вам использовать соглашения, с которыми вы уже знакомы? Вполне вероятно, что в PHP нет ничего уникального, чего вы еще не видели.

0 голосов
/ 23 декабря 2009

Моим любимым соглашением об именах в PHP является то, что «PHP» всегда называют «огромной кучей кр - мы не дотронемся до баржи».

0 голосов
/ 23 декабря 2009

Вы должны быстро обнаружить, что в PHP мало намеков на типы, и причина этого ясна, в этом динамическом языке тип может меняться, поэтому имя не очень важно.

Использование PHPDoc с Eclipse или NetBeans помогает, но вы не можете полагаться на это, если вы хотите быть уверены, что ваша переменная имеет определенный тип, вы должны проверить ее (is_array (), instanceof, ect.).

Кроме того, PHP много для вас делает, он будет конвертировать между вами типы от вашего имени, он будет действовать по-разному в зависимости от типа.

PHP в основном работает со строками, поэтому большинство переменных этого типа. Приложения могут иметь много типов, но один метод не должен использовать слишком много. Если вы найдете себя использование такого количества объектов, что вы не можете легко отслеживать имена их экземпляров, - это проблема проектирования, а не проблема соглашения об именовании.

Если вы хотите убедиться, что не использовали какую-то переменную неправильно, обязательно выполните модульное тестирование. Стандарт в PHP: phpunit

0 голосов
/ 23 декабря 2009

Я использую Zend Eclipse, поэтому я описываю свои переменные следующим образом, чтобы убедиться, что они целочисленны. Тогда я меньше беспокоюсь о том, «что это?»

/**
 * @var Zend_Form_Element
 */
protected $_member;

или

/**
 * @param Zend_Form_Element $input
 */
function do_it( $input )

или

$my_var = some_function(); /* @var $my_var Zend_Form_Element */
0 голосов
/ 23 декабря 2009

Я обычно придерживаюсь этого простого правила

Смысл Верблюжий регистр Имена переменных (с префиксом типа перед) Пример: intNbDaysLeft будет хорошо для целого числа

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...