phpbar.de logo

Mailinglisten-Archive

[php] Chaotische Konstanten

[php] Chaotische Konstanten

Ulf Wendel ulf_(at)_redsys.de
Mon, 14 Aug 2000 16:23:55 +0200


Matthias Jim Knopf wrote:
> 
> On Mon, 14 Aug 2000, Egon Schmid (_(at)_work) wrote:
> 
> > > stimmt jemand mit mir überein, daß folgende Zeilen in zukünftigen PHP
> > > Versionen einen Fehler melden sollten? Wenn ja, würde ich einen Bug
> > > Report/Feature Request schreiben. Konstanten mit \s in Namen und der
> > > Versuch Zahlen mit einem neuen Wert zu belegen, sollte für meinen
> > > Geschmack vom Parser bemängelt werden.
> > >
> > > define("5", "value", true);
> > > define("chaos const", "value", true);
> >
> > Ein Leerzeichen ist kein gültiges Zeichen für einen Namen.
> 
>     mal ne doofe Frage: Wo ist denn das Problem der  zweiten  Zeile
>  (abgesehen jetzt mal von  dem  Leerzeichen),  das  oben  wohl  mit
>  "Konstanten mit \s in Name" angesprochen wurde?

Es wird kein Problem von PHP erkannt, das ist das Problem. 

PHP Bezeichner dürfen keine Leerzeichen (\s = Space, \t, \n, \r)
enthalten. Es gibt kein "$foo 1" nur "$foo1" bzw. "foo 1()" und "foo1().
Warum ist das, was für Variablen- und Klassen- und Funktionsnamen gilt,
nicht auch für Konstanten gültig? Wären Leerzeichen erlaubt, müßte man
doch auch "$Ich{Tab}bin eine{Zeilenumbuch}variable = 'test'" schreiben
können. Hmmh, ob das gut wäre für die Performance und Komplexität des
Parsers und ist es wirklich notwendig...

Ähnlich ist es bei "define ( 5, 6 )" - kann ich da PHP andere
Rechenvorschriften unterjubeln? $5 ist doch auch nicht erlaubt.
Offensichtlich prüft der Parser die Syntax bei einem define() nur
dürftig. Das kannst Du entweder einen Bug nennen oder zumindest einen
Feature Request nach einer Warning für solchen Code machen.

Ulf 


> 
> Diese Sendung wurde Ihnen praesentiert von Jim
> PGP encrypted mails welcome! Key on any keyserver or ftp://users.de
> In the begining there was nothing, which exploded. ( Big Bang Theory )
> 
> --
> ** Durchgehend geöffnet: http://www.php-center.de **
> Die PHP-Liste: mailto:php_(at)_php-center.de
> http://infosoc.uni-koeln.de/mailman/listinfo/php

-- 
Jede korrekte Antwort kostet. Spendenangebote bitte per PM.



php::bar PHP Wiki   -   Listenarchive