Změna syntaxe v PHP 5.3
Patřím mezi ty, kteří vítají s otevřenou náručí změny, kterými prochází oblíbený skriptovací jazyk PHP. Věnoval jsem jim i několik článků zde na blogu (například zde či zde) a svou přednášku na jarním WebCampu. Snažím se průběžně alespoň letmo sledovat práci na nové verzi, a právě při tom jsem narazil na zajímavou informaci.
Oddělovač jmenných prostorů (namespace separator) se zřejmě změní z tzv. "čtyřtečky" (::) na zpětné lomítko (\).
Aplikace pro PHP 5.3 naštěstí zatím moc lidí nevyvíjí a David v Nette určitě zvládne použít automatickou náhradu textu, takže to nikoho moc bolet nebude, ale rozhodně to je pro mě překvapení. Chystaná změna má napomoci vyřešit nejednoznačnosti současné syntaxe a možná to jinak nešlo, ale stále si říkám - proč nepadla volba například na obyčejnou tečku?
Komentáře
$x = MyNamespace.myFnc()
Spojuje se konstanta MyNamespace s výsledkem funkce myFnc() nebo se volá funkce MyNamespace.myFnc?
myNamespace|myFunc()
:P :)
[11] tilda je bitova negace
Takze stejny pripad jako tecka.
namespace..class::method()
PHP prostě zavádí nové konvence - nemohu si pomoct... (tím neříkám, že jsem zásadně proti;-) - situace je taková že PHP prostě používá pro něco jiné operátory než ostatní a proto musí nutně i pro dlaší věci používat jiné operátory než je zvykem, páč ty, které by se používat měly už jsou zaplněné...)
[15] Taky občas mám ten pocit.