Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Kit
Tvůrce
Avatar
Kit:1.8.2013 13:11

Ahoj, ještě nedávno jsem tady obhajoval, že z důvodu setrvávání 5.2 na mém webhostingu setrvávám s toutéž verzí i na lokálu. Před měsícem jsem si nainstaloval nový OS s tím, že se mi tam automaticky nainstalovalo PHP 5.3 s možností upgrade na verzi 5.4.

Takže váhám. Vazba na webhosting se mi už stejně ztratila, PHP 5.4 nabízí nové vlastnosti, jako např. built-in webserver (Apache už potřebovat nebudu), traits zatím nepoužívám, ale vypadá to jako zajímavá forma maker a pár dalších vychytávek
http://www.php.net/…features.php
se v budoucnu určitě bude hodit.

Co vy na to, už jste upgradovali na PHP 5.4? Jaké máte zkušenosti?

Odpovědět
1.8.2013 13:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Michal Žůrek - misaz:1.8.2013 13:22

Pokud tě nic nedrží na staré verzi tak bych přešel. Já používám 5.4.

 
Nahoru Odpovědět
1.8.2013 13:22
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:1.8.2013 13:26

Já budu přecházet rovnou na PHP 5.5. PHP 5.2 chybí plno důležitých věcí (např. jmenné prostory) a plno věcí se už dělá jinak (autoloader), nevidím důvod proč provozovat historické verze.

Nahoru Odpovědět
1.8.2013 13:26
You are the greatest project you will ever work on.
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na Kit
David Jančík:1.8.2013 13:33

Já mám PHP 5.4 a řikal sem si jak si tam zprovoznim při uploadu AJAXovej progress bar viz. http://php.net/…progress.php jenže vono to samozřejmě nefunguje :D Dělá se to prý přidáním knihovny do PHP nebo přes nějaký komba. A s tím se mi nechtělo už štvát tak sme napsal: "Prosím čekejte" :D
Ale co se týče dalších novinek, myslím, že nejnovější verzi je rozhodně dobré mít a využívat čeho se dá. Musíme ale počítat s tím, že pokud chceme používat kód i někde jinde (třeba na zakázku) tak zákazník nemusí mít server s nejnovějším PHP. A né všechny webhostingy, které jsou levné nabízí hned nejnovější PHP. Ale PHP 5.4 by mělo být takové minimum v současné době.

Editováno 1.8.2013 13:36
Nahoru Odpovědět
1.8.2013 13:33
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:1.8.2013 13:34

Co jsem se dočetl, tak PHP 5.4 zatím nepodporuje APC, což může být problém.

Nahoru Odpovědět
1.8.2013 13:34
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:1.8.2013 13:36

APC pro 5.4 je na 100%, nezkoušel jsem ho, ale pochybuji o tom, že to vydali nefunkční. PHP 5.5 má v jádru opcache.

Nahoru Odpovědět
1.8.2013 13:36
You are the greatest project you will ever work on.
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na David Hartinger
David Jančík:1.8.2013 13:37

Jj, ty slavné cache u PHP 5.5. Že rovnou nepíšeš o tom, co tam v dokumentaci psali :D

Nahoru Odpovědět
1.8.2013 13:37
Zapomeň, že je to nemožné a udělej to ;)
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:1.8.2013 13:37

David Jančík před chvílí napsal, že mu nefunguje.

Nahoru Odpovědět
1.8.2013 13:37
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Drahomír Hanák:1.8.2013 13:38

Já jsem upgradoval a jsem spokojený. Nejvíc používám asi přístup k polím vrácených z metody ($obj->foo()['bar']) nebo $this v Closures ($this->onSuccess[] = function() { $this->name }). Fakt byla otrava přidávat si na tyhle věci pomocné proměnné. Traits vypadají zatím jako dobrá vychytávka. Bojím se jenom, aby se nepoužívaly špatně. Na PHP 5.2 bych nemohl zůstat už jen kvůli chybějícím namespaces.

Mimochodem, už jsi viděl PHP 5.5? http://www.php.net/…features.php Celkem se těším na finally a ::class vlastnost (konečně rozumné předávání tříd) Immutable DateTime vypadá taky dobře.

 
Nahoru Odpovědět
1.8.2013 13:38
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Michal Žůrek - misaz
Kit:1.8.2013 13:46

Ano, PHP 5.5 už je, ale na produkční nasazení se zatím nehodí. Najdeš ho například na webhostingu http://www.php5.cz , takže si ho můžeš vyzkoušet.

Nahoru Odpovědět
1.8.2013 13:46
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:1.8.2013 13:47

5.5 je na produkcích běžně, změny jsou minoritní a budu na něj přecházet, už mi to i nabídli.

Nahoru Odpovědět
1.8.2013 13:47
You are the greatest project you will ever work on.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Drahomír Hanák
Kit:1.8.2013 13:58

přístup k polím vrácených z metody
Tohle jsem nikdy nepotřeboval, připadá mi to jako zvrácenost. Raději si napíšu další getter.
Closures jsem zatím nepoužíval (v 5.2 to ani nešlo), ale určitě je používat budu.
Traits v roli maker mohou být užitečné i nebezpečné. Mám podobné obavy.

Chybějící namespaces mě netrápilo. Místo toho jsem dával třídy do podadresářů a vylepšil autoloader. Asi se mi nelíbí ten symbol, příliš mi připomíná Windows :)

Programuji tak, aby co nejvíc proměnných bylo finally. To klíčové slovo už je vlastně jen něco navíc, co mi umožní udělat některé nové obraty.

Nahoru Odpovědět
1.8.2013 13:58
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Drahomír Hanák:1.8.2013 14:13

Tady jde o finally v try-cache. U proměnný bohužel stále chybí možnost, označit je jako finální. Já proměnné v takovém případě udělám privátní a napíšu si finální getter metodu. Zvlášť když jde o nějakou open-source knihovnu, tak se to hodí. Nikdy nevíš, kdo ji jak bude používat. Takhle je alespon můžu vést, aby to nedělali. Jinak finally v try-cache si myslím, že bude hodně užitečná vlastnost.

 
Nahoru Odpovědět
1.8.2013 14:13
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Drahomír Hanák
Kit:1.8.2013 14:17

Aha, tohle finally. Nemusí být potřebné, protože PHP používá destruktory. Takže místo několika finally v různých místech aplikace použiješ jeden destruktor přímo v objektu. Java ani C# tohle bohužel nemají.

Nahoru Odpovědět
1.8.2013 14:17
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Michal Žůrek - misaz:1.8.2013 14:33

ve VB.NET jsem to už několikrát použil. jsem rád že to tam bude.

 
Nahoru Odpovědět
1.8.2013 14:33
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:1.8.2013 14:38

Tak jsem zkusil upgrade, ale systém mi to odmítl kvůli nesplněným závislostem některých modulů, které ještě pro novou verzi nejsou hotové. Musel bych nejprve vyházet moduly, které jsou závislé na PHP 5.3.

Nahoru Odpovědět
1.8.2013 14:38
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:1.8.2013 18:11

Tak a mám verzi PHP 5.5.1-1. Můžu testovat. Už mi jede i jeho vlastní webserver, je to paráda.

Díky všem za názory.

Nahoru Odpovědět
1.8.2013 18:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Kit:1.8.2013 21:24

Příznivá zpráva: Integrovaný HTTP server v PHP bere o něco méně systémových prostředků než v kombinaci s Apache. Pro lokální účely už není nutné instalovat celý WAMP, ale pro mnoho aplikací stačí pouze samotné PHP 5.4 nebo 5.5. Má i obdobu .htacces, píše se v jazyku PHP.

Je to server určený pro snadný vývoj PHP aplikací. Na produkční server se nehodí.

Nahoru Odpovědět
1.8.2013 21:24
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 19 zpráv z 19.