Diskuse:PHP

message: Tato diskuse trpí tím, že se někdo pořád snaží PHP napasovat a přesně popsat zvyklostmi Javy, nebo C++. Pokud se mu to nedaří, napíše třeba „Článek je subjektivní, obsahuje hodně relativismů“.
U PHP je velmi těžké od sebe odlišit jazyk, interpretr, technologie. Rozlišení jazyka a knihovany je také u málokterého jazyka ostré. Zkuste si třeba představit C++ – je třeba operátor new součást jazyka? Je, ale bez knihovny by operátor nefungoval. Každý jazyk má základní runtime knihovnu, která je někdy tak těsně přišitá k jazyka, že dělící čáru budete těžko hledat.
Jazyk C++ není definován kompilátorem, ale normou. Jazyk PHP není definován normou, ale právě jeho interpreterem. Rozlišování tedy mezi interpretrem a jazykem je v případě PHP méně oprávněné, než u C++. Mimochodem, kolik znáte 100%ně kompatibilních interpreterů PHP? Je totiž právě jeden.
Budu reagovat: Kde je řečeno, že je PHP velmi oblíbené? – to jsem moc nepochopil. PHP je tak nechutně rozšířené, používá se naprosto všude, a v zásadě je to široce volená technologie pro dynamické stránky, což zjistíte jakoukoli statistikou, nebo jenom malým vlastním průzkumem. Pokud požadujete ovšem vědeckou práci na 300 stran, která to dokazuje s rozpočtem 100 miliard dolarů, a potvrzením EU, tak to asi nedostanete. Říci, že PHP není oblíbené, to jste asi přišel z jiné galaxie a ještě jste pozemské poměry moc nepoznal.
Jak víte, proč se stalo oblíbeným? – Opět viz odkaz na věděckou studii v předchozím odstavci.
Co je "částečná svoboda"? – Tak mě napadlo, nejste právník?
Jednoduchost použití PHP je diskutabilní – pán chodí do extrémů. Zkuste si posadit žirafu před klávesnici a co nezvládnem, prohlašme za složité. Posaďte začátečníka před Windows , dejte mu můj  Complex Web Server, kterým i začátečník nainstaluje celé prostředí PHP včetně Apache a MySQL do necelé minuty bez problémů. A pak mu dejte jednoduchou dobrou příručku o PHP a bude tvořit mnohem rychleji, než když se pokusí použít třeba Javu, nebo .NET, kteréžto budou pro začátečníka mnohonásobně složitější. Tím je dokázáno, že PHP je jednoduché – nebo chcete-li právnicky přesně – jednodušší pro začátečníka, než jiné technologie.
S čím souhlasím je přirovnat operátory == a === k C. To je blbost, Céčko funguje jinak.
Ohledně indexů pole – přímá pole obsahují jen int, nebo string. Ovšem emulované pole může jako index obsahovat cokoli a v syntaxi ho nerozlišíte. Ale souhlasím, že by se mělo mluvit jen o přímým polích.
Miloslav Ponkrác
thread_title:  Pozor! Zase neblbněte! 

message: U první sekce jako kritérium významnosti navrhuji brát to, zda má příslušná technologie článek na Wikipedii (kterékoliv jazykové verzi) a na tento článek rovnou odkázat.
Je mi jasné, že druhá sekce se mnoha příznivcům PHP nebude líbit a budou mít tendenci nevýhody PHP bagatelizovat, zapírat nebo nebudou chápat, proč je to nevýhoda. Proto jsem tam rovnou dal NPOV a vybízím k diskusi výhod a nevýhod zde, dřive než budete editovat.
Výhoda a nevýhoda jsou relativní pojmy. Proto navrhuji jako "baseline" pro srovnání použít ostatní technologie použitelné na podobné účely jako PHP, tedy: ASP.NET, ColdFusion, Java EE, Perl, Python, Ruby (on Rails). Naopak neuvažoval bych kombinace typu C + CGI (příliš složité programování), Apache SSI (příliš omezená funkčnost), Caché Server Pages (příliš nesmyslná technologie), XML + XSLT + JavaScript (principiálně příliš jinde), ASP (zastaralé) a podobně.
147.229.220.237 28. 7. 2008, 02:17 (UTC)
thread_title:  Přidány sekce ''Významné projekty...'' a ''Výhody a nevýhody PHP''. 

message: "PHP se stalo velmi oblíbeným především díky jednoduchosti použití a tomu, že kombinuje vlastnosti více programovacích jazyků a nechává tak vývojáři částečnou svobodu v syntaxi."
* Kde je řečeno, že je PHP velmi oblíbené?
* Jak víte, proč se stalo oblíbeným?
* Co je "částečná svoboda"? Assembler také nechává částečnou svobodu.
* Jednoduchost použití PHP je diskutabilní... zkuste postavit začátečníka před instalaci PHP na Apache.
... a takto bych mohl pokračovat u celého článku.
Kromě toho, PHP není jen jazyk, ale celá technologie:
* jazyk
* interpret
* knihovny
Podobně jako C++ je jazyk, GCC je kompilátor, STL je standardní C++ knihovna.
"Ve verzi PHP 5 se výrazně zlepšila podpora" - to patří spíše do sekce historie...
    * Díky tomu má PHP dva typy porovnání, '==' stejný jako v C, a '===' který platí jen když jsou oba dva výrazy stejného typu.
- To je fakt svělé. Takže == funguje stejně jako v C? Nesmysl. A === platí, když jsou oba výrazy stejného typu? Takže hodnota se může lišit? + chybí zdroj.
    * Pole jsou heterogenní, mohou tedy obsahovat jakékoli údaje, stejně tak jako jejich indexy.
- Nesmysl. Indexy mohou obsahovat pouze celá čísla nebo stringy. Nemohou obsahovat reference objektů, pole, handly systémových zdrojů...
    * Řetězce lze uzavírat jak do uvozovek (obsah je parsován), tak do apostrofů (obsah není parsován).
- Opět nesmysl. Obsah je parsován v každém případě. Zřejmě chcete říct, že v obsahu se nenahrazují proměnné a některé escape sekvence.
Podotýkám, že jsem letitý PHP vývojář (od již od raných verzí PHP 3) a PHP fandím, ale tenhle článek je velmi podprůměrné kvality.
replies: text: Pokud víte jak a máte zájem, určitě uvítáme vaši pomoc s článkem. Editujte s odvahou. --Adam Zivner 11:57, 6. 6. 2008 (UTC)
thread_title:  Článek je subjektivní, chybí zdroje, obsahuje hodně relativismů 

message: (Než do toho budu zasahovat, ověřím si to.)
"jeho skripty se začleňují přímo do struktury jazyka HTML" - ano, souhlasím. Ale také se začleňovaly do WML. Může být php script, který tvoří/mění obázek(počítadlo)
"programovací jazyk" - nechci flame, ale osobně myslím, že je scriptovací(, i když to nic neznamená).
--Danny 19:14, 28. 6. 2006 (UTC)
replies: text: PHP script rozhodně nemůže být programovací jazyk :-). PHP zvládá podstatně víc než jen generování HTML stránek, takže si myslím, že jde o programovací jazyk. --Hugo 19:30, 28. 6. 2006 (UTC)
replies: text: ::PHP script nie je programovací jazyk, lebo to je len script, script, teda časť programového kódu nemôže byť jazykom, PHP, ako technológia na programovanie, to áno, ale v súčasnosti sa oficiálne PHP ako jazyk zaraďuje do množiny scriptovacích jazykov, aj keď zvláda viac, než nlen scriptovací jazyk.--Wikipedista:Anonym

text: : PHP rozhodne je programovaci jazyk :). Polemizovat by se ovsem dalo, zda-li je to vzdy jazyk interpretovany (ted narazim na pre-kompilaci Zend Optimizerem). Sporne je spise ale cast "jeho skripty se začleňují přímo do struktury jazyka HTML a jsou prováděny na straně serveru." - skripty v PHP preci rozhodne nemusi byt zacleneny do HTML. Mimo to, ze mohou byt zacleneny do nejakeho jineho jazyka (XHTML, XML, WML atd.), mohou byt take samostatne, bez jakychkoliv HTML znacek, a v tomto pripade vubec nemusi byt provadeny na strane serveru (spousti se interpretem php primo na lokalnim stroji). Tuto cast clanku by chtelo nejak prepsat, aby nereflektovala pouze jedno z mnoha vyuziti PHP a neprezentovala ho navic jako jedine... --Kronn 22:14, 28. 6. 2006 (UTC)

text: Trochu jsem to upravil, snad už to je přesnější.

text: PHP sice jde zkompilovat, ale tato možnost se využívá velmi málo a výsledky nejsou nijak ohromující. Takže si myslím, že tvrzení, že jde o interpretovaný jazyk je v pořádku. --Hugo 22:33, 28. 6. 2006 (UTC)
replies: text: : Tak jsem to ted zkusil trosku vylepsit i ja :-) --Kronn 22:42, 28. 6. 2006 (UTC).
replies: text: ::Díval jsem se na en, a tam je natvrdo interpretovaný. Kompilace php je možná, ale ty výsledky jsou žalostné, takže bych to tu snad ani nezmiňoval. --Hugo 22:47, 28. 6. 2006 (UTC)
replies: text: ::: Kde jste nasel na en ze PHP je interpretovany jazyk? Ja bych spise rekl, ze to tam takto zmineno neni... Ono je PHP spise nez interpretovanym jazykem jazykem skriptovacim - a pozor, to nejsou synonyma, skriptovaci take neni podmnozinou interpretovaneho, skriptovaci prolina interpretovane a kompilovane. Takze spravne je, ze PHP je skriptovaci jazyk. Souhlasite?

text: To bude asi nejlepší řešení, protože tato diskuze na wiki nepatří.

text: Zpřesnil jsem některé pojmy. Změnil jsem větu o netypovosti PHP, jelikož to nebyla pravda. PHP je dynamicky typový jazyk. Rozlišil pojem globální a superglobální proměnné. Uvedl jsem rozdíl mezi textem uvedený v apostrofech a v uvozovkách. Polidštil jsem proměnné, foo a bar jsou přece jen na wiki nevhodné. --Gee 10:56, 04. 10. 2006 (UTC).
thread_title:  Drobné nepřesnosti 

message: Nemohu si pomoci, ale článek na wikipedii by měl být především informativní. A neopakovat se. Ač mi je PHP ukradené, nemohu se zbavit pocitu značného zasednutí na PHP. ZKusím komentovat:
„Až do verze PHP 4 nepříliš povedená podpora objektově orientovaného programování s mnoha záludnostmi“
Verze PHP 5 už je tu léta, co takhle srovnávat s dobou Napoleona a Národního obrození, nechtěl byste?
„ Verze 5 již podporuje OOP lépe, ale nativní knihovna funkcí nadále používá procedurální paradigma“
„Nativní funkce nepoužívají objektový přístup“
Tady někdo chtěl zkritizovat PHP, a tak pro jistotu jednu věc napsal několikrát, protože PHP nesnáší a každý bič se hodí.
„Dosud neexistuje formální specifikace syntaxe jazyka a jeho chování (jedinou úplnou definicí je interpreter)“
„Tím pádem existuje jediný 100% kompatibilní interpreter“
To nějak vyplývá jedno z druhého, navíc jediný kompatibilní interpretr existuje, to je ten, který definuje PHP.
„Způsob, jakým PHP funguje, principiálně brání efektivnímu řešení mnoha úloh (např. objektově-relační mapování)“
Kecy kecy kecy – nepijte to už prosím vůbec, a celkově se dále vyhýbejte i alkoholu.
„Programátor nemá zaručené cílové prostředí, mnoho věcí přímo ovlivňujících chování PHP lze změnit pouze mimo soubory projektu (např. v konfiguračním souboru php.ini)“
Jak už to u technologií, kde je potřeba zaručit bezpečnost bývá – a myslím, že administrátoři serverů jsou od toho, aby PHP jim nezničilo servery, a smělo odsud posud. Od toho to je.
„Nepodporuje paralelní výpočet (vlákna) a synchronizaci“
Jste si jist?
„Nepodporuje škálování pomocí prostředí sdíleného na více serverech“
Trochu jste přestřelil – PHP není určena na tento typ projektů. To taky můžete napsat obdobně třeba do stránky Člověk: „nevýhoda člověka – neumí létat a živit se petrolejem„. Zkrátka mi přijde, že tohle sem nepatří.
„Nemnoho kvalitních frameworků“
Velmi subjektivní, doufám, že wikipedie by měla být souborem hlavně objektivních informací.
Mimochodem, když chcete srovnávat třeba s Ruby, tak tam najdete pouze jeden framework – Ruby on Rails, ostatní skoro nejsou vidět a nemluví se o nich.
„Velký počet zásadních chyb v počátcích nových verzí“
Toto prosím zkopírujte do všech sw článků, protože tak už to bývá skoro u každého sw. Pokud to neuděláte, tak to vykopejte ven, a přestaňte s tou zasednutostí na PHP.
Atd.. – a vůbec, opravím to sám, a budu to klidně denně vykopávat, dokud tu nebudou skutečně objektivní informace.
replies: text: Podle toho co tu vidím, jak píšeš o článku PHP. Je vidět, že opravdu to psal někdo, kdo s PHP měl špatný zkušenosti. Jinak díky tomu, že chodím na SPŠE (elektronika) a mám tam jednoduché programování v Javě, vím že někdy něco nejde přímo, ale přesto to neznamená, že ten jazyk je špatný. Jinak k těm verzím, to jaká byla PHP 4 patří spíš do minulosti. Syntaxe složitá? Java mě příjde stejně těžká a atd..souhlasím se změnami od tebe/vás (?), PHP se nevěnuju (aktivně, jinak na stránky používám asi tak 4 příkazy), přesto chápu jak by článek měl vypadat. --Paxan 11. 1. 2009, 15:32 (UTC)
thread_title:  Sekce nevýhody je poněkud poněkud