Webdesignéři, webdesignér, tvorba webu, tvorba loga, tvorba banneru Hosting, hostingy, webhosting, přehled webhostingů, přehled hostingů Novinky ze světa domén, hostingu a internetu

11.
ČER

PHP 5.3 – začněte se připravovat

Do kategorie freehosting, novinky, serverhosting, webhosting přidal Lukáš Nevosád,

PHP se pomalu ale jistě dostává do dlouho očekávané verze 5.3. V současné době je vydaný druhý release candidate, na třetím, pravděpodobně posledním, se pracuje. Jaké novinky PHP5.3 přináší a jaké problémy můžeme očekávat?

Jmenné prostory

PHP5.3 (konečně) zavádí jmenné prostory, takže u rozsáhlých aplikací nebude docházet ke zbytečným kolizím.  Jmenné prostory se definují pomocí klíčového slova namespace, které lze použít na začátku skriptu. Více úrovní lze oddělit zpětným lomítkem:

namespace prostor\podprostor;

Při používání prvků ve jmenném prostoru se na ně odkazuje obdobně, případně lze použít klíčové slovo use [as] a zkrátit tak zápis. Více viz manuál (pozor, není ještě plně aktualizován a na některých místech používá starý způsob oddělení jmenných prostorů – čtyřtečku).

S novým rezervovaným slovem namespace se pojí možná nekompatibilita – pokud jej používáte například pro název třídy, v PHP5.3 narazíte na problém. Týká se to například populární MediaWiki, která s PHP5.3 zatím kompatibilní není.

Late Static Binding aneb objekty napodruhé a pořádně

Druhá důležitá změna je o něco komplikovanější na vysvětlení:


class A {
public static function show() {
echo self::foo();
}
public static function foo() {
return "A";
}
}class B extends A {
public static function foo() {
return "B";
}
}A::show(); //A
B::show(); //A

V případě statického volání nelze v současném PHP žádným způsobem zjistit, jaká třída byla skutečně volána. Všechny způsoby vždy vrací třídu, ve které je příslušná statická metoda implementovaná. Od verze 5.3 bude možné toto zajistit použitím keywordu static namísto self.

Zkrácená evaluace

Zkrácená evaluace znamená zkrácený zápis:

$a=($value ?: 'default');

namísto současného:

$a=($value ? $value : 'default');

Tento velmi praktický operátor tedy vrací výraz před operátorem, pokud byl vyhodnocen jako true, v opačném případě vrací výraz uvedený za operátorem.

V PHP5.3 najdeme samozřejmě spoustu dalších novinek – například anonymní funkce nebo nové magické metody. Podívejme se ale na to, co nás z pohledu webhostingu zajímá nejvíce.

Kompatibilita PHP5.3

Skripty by měly být s PHP5.3 v zásadě kompatibilní. Skripty nesmí samozřejmě používat nové rezervované keywordy namespace, goto, closure.

Nově si bude PHP stěžovat u použití funkcí z rodiny ereg () – patří sem například i split() – které jsou nyní označeny za zastaralé a budou vyhazovat E_DEPRECATED.

Velmi podstatné je z hlediska webhostingu označení některých „bezpečnostních“ konfiguračních direktiv za zastaralé a s tím spojené warningy. E_DEPRECATED tak bude vyhazovat také konfigurace se zapnutým safe_mode, register_globals nebo magic_quotes_gpc.

Jen čas ale ukáže, zda se PHP5.3 skutečně stane definitivním hrobařem safe_mode na webhostinzích.

15.
DUB

Není PHP jako PHP

Do kategorie co je to, webhosting přidal Lukáš Nevosád,

Využití typicky českého webhostingu, tedy webhostingu PHP + MySQL, kombinace známé také pod zkratkou LAMP (Linux + Apache + MySQL + PHP), se postupně mění. Jednoúčelové na zakázku tvořené aplikace střídají rozsáhlé balíky aplikací, nejčastěji těch zdarma dostupných. Velký boom zažívají především open source aplikace jako WordPress, Drupal, Joomla!, ZenCart a další. Všechny se z pohledu webhostingu vyznačují především specifickými nároky na konfiguraci serveru. zobrazit celý příspěvek

Blog Hostingy.cz is powered by Wordpress.