Можно ли использовать PHP без символа доллара для переменных? - PullRequest
7 голосов
/ 06 апреля 2009

Можно ли именовать переменные в Java-подобной манере в PHP, например, устраняя необходимость в знаке $ каждый раз? Если так, как я могу включить настройку, которая делает это?

Ответы [ 5 ]

74 голосов
/ 06 апреля 2009

Нет.

8 голосов
/ 06 апреля 2009

Извините, это невозможно. Ближайшие константы:

define('CONS', 5);
echo CONS;
6 голосов
/ 18 июля 2009

Я верю другим ответам в том, что это должно быть невозможно.

Хотя я лично ненавижу PHP, у всех есть хорошие характеристики. Одна из причин, по которой PHP $ очень хорош, связана с интерполяцией переменных:

$bob = "rabbit"
$joe = "dragon-$bob"  // ==> dragon-rabbit

Это довольно мило и коротко. В Ruby, поскольку переменные не должны иметь какой-либо конкретный начальный символ, вы должны набрать немного больше:

bob = "rabbit"
joe = "dragon-#{bob}"

И то же самое происходит в Java (ну, я ушел из Java, когда вам все еще приходилось использовать либо StringBuffer, либо объединять с " + bob + " ... Я уверен, что это уже прошло)

Так что знак доллара раздражает и уродлив, но вот как минимум одно преимущество (должно быть больше).

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

5 голосов
/ 06 апреля 2009

Неа. Переменные в PHP должны начинаться с $.

Другой подход заключается в использовании констант.

3 голосов
/ 07 апреля 2009

Это все равно что просить Java не печатать строго:

str = "some string";
System.out.print(str.contains("some"));

Не имеет никакого смысла.

...