Discuție:PHP

De la Wikipedia, enciclopedia liberă
Jump to navigation Jump to search
P Computer-science.svg Articolul PHP este un subiect de care se ocupă Proiectul Informatică, o inițiativă de a construi o listă cuprinzătoare și detaliată cu informații despre Informatică Dacă doriți să participați la acest proiect, vă rugăm să vă înscrieți aici.
C Acest articol a fost evaluat ca făcând parte din grupa C pe scala de calitate.
Neclasificat Acest articol încă nu a fost evaluat pe scala de importanță.

Scripturi[modificare sursă]

Valugi 19 decembrie 2007 22:47 (EET) cred ca scripturile de exemplu ar trebui mutate in alta pagina de exemple / sunt prea mari si aici ar trebui sa fie doar o pagina generala de informatii cu cel mult un helloworld.php de exemplu.

Nu pot decat sa iti dau aceeasi sugestie ca mai jos: daca vrei sa reoganizezi articolul go ahead.--Strainu 20 decembrie 2007 14:55 (EET)

ok Valugi (discuție) 5 august 2008 18:29 (EEST)

sper sa va placa[modificare sursă]

sper sa va placa scriptul pentru shout box...


reorganizare[modificare sursă]

avand in vedere ca aceasta pagina este departe de a reprezenta cu brio lumea PHP. Pe langa ce este scris acum, ar fi interesant de adaugat urmatoarele si de mutat majoritatea exemplelor intr-o pagina separata.

- moduri de utilizare - sintaxa - data types, functions etc - PEAR, PECL si prezentarea catorva module interesante Acest comentariu nesemnat a fost adăugat de Narcis radu (discuție • contribuții).

Daca poti sa faci aceasta reorganizare, go ahead, este binevenita.--Strainu 3 decembrie 2007 14:53 (EET)

Script-uri[modificare sursă]

Enciclopedia nu este un site de tutoriale. Nu au ce cauta script-urile in articol.

Glosar[modificare sursă]

Exista o traducere acceptata pentru "framework" in contextul informatic? Valugi (discuție) 9 septembrie 2008 11:35 (EEST)

Glosarul lui Gnome. --Turbojet 9 septembrie 2008 11:50 (EEST)

Multam Valugi (discuție) 9 septembrie 2008 11:59 (EEST)

css infobox[modificare sursă]

Inca lucrez la formatul de infobox, sa vad daca ma prind cum ii fac un css klumea. valugi (discuție) 22 septembrie 2008 13:13 (EEST)


Infoboxul nu mai functioneaza in beta. Are cineva idee cum se rezolva asta? valugi (discuție) 11 august 2009 22:31 (EEST)

PHP România[modificare sursă]

Am adus respectivele informații deoarece asta s-a hotărât la propunerea de ștergere a articolului despre PHP Romania. Nu mi se pare corectă introducerea unei legături externe a cărei prezență nu este explicată și justificată în articol. Așa că ori rămâne paragraful explicativ și legătura, ori niciuna. Sunt de acord că unirea articolelor nu este cea mai elegantă soluție, dar asta s-a hotărât în discuța respectivă (eu nu am participat, am încheiat doar discuția). --Urzică (discuție) 26 ianuarie 2011 22:50 (EET)

Dacă credeți că site-ul e absolut nenotabil și nu ar trebui să apară în articol deloc, eu nu insist, că nu e domeniul meu și nu știu cum stă treaba. Am vrut doar să explic modificarea mea. --Urzică (discuție) 27 ianuarie 2011 00:04 (EET)
Nu vreau sa creez discutii inutile, dar situl asta creat de un "entuziast programator" nu e cu nimic exceptional si nu cred ca descrierea lui sau proiectele lor au valoare enciclopedica in ceea ce priveste topicul PHP. Un link catre comunitate poate exista, dar informatia pe care ai pus-o nu ajuta cu nimic pe cineva care vrea sa inteleaga ce e PHP. Wikipedia nu este un repositor de informatii despre situri dedicate unui subiect.valugi (discuție) 27 ianuarie 2011 00:13 (EET)
Nu sunt de acord cu această viziune. Pentru programele libere sunt importante comunitățile de utilizatori locale, pentru că oferă suport în limba utilizatorilor. Pentru programatori poate că nu e foarte relevant, dar pentru alte proiecte existența unor asemenea locuri de unde se poate obține ajutor reprezintă diferențiatorul. Susțin deci existența unei secțiuni despre comunitățile locale. Dacă există mai multe, trebuie amintite toate dacă este posibil, dacă nu, cele mai prezente în sursele de încredere.--Strainu (دسستي‎)  27 ianuarie 2011 00:25 (EET)
de acord ca e importanta - un link ajunge. Nici o alta pagina wiki a PHP in alta limba nu dezvolta informatii despre grupul/grupuri locale. Asta e un site web, dar sunt altele cu forumuri, liste de discutii, liste de emails, grupuri de IRC. De ce e grupl asta mai special? Nici macar pagina web a PHP nu listeaza grupurile. Listeaza intalniri si conferinte. valugi (discuție) 27 ianuarie 2011 00:43 (EET)
Se pare că n-ați citit ce-am scris eu, așa că reiau: Dacă există mai multe [grupuri locale de utilizatori], trebuie amintite toate dacă este posibil, dacă nu, cele mai prezente în sursele de încredere. PHP România nu este mai special în niciun fel din ce pot să-mi dau seama, dar asta nu înseamnă că nu are ce căuta în articol.--Strainu (دسستي‎)  11 februarie 2011 13:50 (EET)

Scripting / Programare[modificare sursă]

Deși PHP este un limbaj de scripting, în articol este folosit termenul programare foarte des, doar pentru că "sintagma scripting nu există în limba română". Cu toate astea uităm că uneori traducerea anumitor termeni tehnici în altă limbă își pierd tot sensul, iar textul poate devine neclar.

Sunt de părere că este nevoie să se găsească o cale de mijloc cel puțin, pentru a înlătura grava greșeală din articol. Vimishor (discuție) 14 iunie 2011 01:47 (EEST)

"limbaj de programare" este departe de a fi o greșeala gravă; nu înțeleg exact de care este greșeala. Conform DEX cuvântul programare există, iar scripting nu. Dacă vrei să faci accentuezi faptul că este un limbaj interpretat, poți să adaugi această informație. Conform definiției din engleză un limbaj de scripting este un limbaj de programare, fiind un subset. "Scripts" are distinct from the core code of the application, as they are usually written in a different language and are often created or at least modified by the end-user., iar în PHP end-user nu poate modifica codul sursă. PS. lucrez cu PHP din anul 2000 și dacă la început PHP era folosit ca limbaj de scripting de către administratorii de sistem, lucrurile s-au schimbat foarte mult între timp valugi (discuție) 14 iunie 2011 09:09 (EEST)
Este greșeala gravă pentru că PHP-ul nu este definit ca limbaj de programare nici măcar în documentația oficială. De ce te ferești să folosești un neologism în acest articol, când acest termen este folosit în multe alte locuri de mult timp? Poți adăuga o notă de subsol în care să explici pe scurt ce înseamna "limbaj de scripting" sau poți face și un ciot cu același scop. În viziunea programatorului care pune umărul la dezvoltarea PHP-ului, "end-user" ești tu, care folosești PHP-ul pentru a dezvolta ceva, nu vizitatorul ; pentru că tu le folosești munca lor, iar vizitatorul site-ului folosește munca ta. Vimishor (discuție) 14 iunie 2011 14:17 (EEST)
scripting nu apare nici in dicționarul de neologisme. Wikipedia nu este un loc pentru a publica idei personale sau diverse viziuni, totul trebuie susținut prin surse. Un limbaj de programare este un set bine definit de expresii și reguli (sau tehnici) valide de formulare a instrucțiunilor pentru un computer. PHP se încardrează perfect aici. valugi (discuție) 14 iunie 2011 14:37 (EEST)

Documentația și descrierea oficială PHP nu este o sursa destul de credibilă ? Dacă folosești PHP din 2000 trebuia să ajungi prin respectiva documentație de câteva ori cel puțin.

What is PHP? PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. via PHP.net

Din păcate codul PHP nu este interpretat în mod direct de către computer, ci de un alt soft (care este scris într-un limbaj de programare), așa că nu prea se încardrează perfect aici. Se folosesc zeci de neologisme zilnic care nu sunt incluse în dicționare, mai ales pentru a descrie ceva tehnic, așa că nu văd unde este problema, mai ales dacă ai adăuga și o notă de subsol pentru respectivul termen. Vimishor (discuție) 14 iunie 2011 15:27 (EEST)

îți repet argumentul pe care i l-am oferit și adminului Andrei Stroe, când am anulat aceaiași modificare pe care o propui. Cuvântul scripting nu există in limba română.(http://dexonline.ro/definitie/scripting). Sintagma limbaj de programare se aplică , este corectă din punct de vedere lingvistic și include PHP (în ro si en). Din punct de vedere al programarii PHP face lucruri care nu țin strict de definiția înițială de limbaj de scripting pe care a primit-o în 99. Eu nu cred că aspectul asta e atat de important încat să merite atâtea discutii, și o sa ma abțin de la mai multe comentarii. Am 11 ani de experiența cu PHP și de aceea am decis să repar și să urmăresc pagina asta (era o varză inainte). Iți recomand și ție să îți dedici energia editănd pagini care au cu adevarat nevoie de îmbunătățiri. Wikipedia este liberă pentru editare, și ca un wikipedist ceva mai vechi îți recomand să nu te fixezi în prima pagina pe care o editezi sau în prima anulare de care ai parte. Cu respect valugi (discuție) 14 iunie 2011 18:00 (EEST)
Dacă tu consideri după 11 ani că PHP este un limbaj de programare, îmi pare rău că ai pierdut atâta timp în zadar. Și nu înteleg de când publicarea unui text pe Internet implică atâta aroganță. Ai scris un articol, nu ai salvat pe nimeni de la moarte. Așa că încearcă sa îți vezi lungul nasului și să asculți și ce au ceilalți de spus (să asculți cu adevărat, nu doar să te prefaci că asculți). Vimishor (discuție) 14 iunie 2011 22:10 (EEST)
TL;DR se face o confuzie gravă între limbaj și runtime. PHP merge dincolo de modul standard, discutabil în categoria scripting. /TL;DR Deși anumite puncte de vedere sunt discutabile, PHP este un limbaj de programare. Doar în versiunea "originală", adică implementarea sub Zend Engine poate cădea în categoria "scripting". Roadsend PHP compilează în cod mașină. Raven PHP se compilează și rulează peste LLVM. Phalanger compilează în CIL și rulează sub .NET (posibil și Mono, nu am încercat). Quercus compilează în Java bytecode și rulează sub JVM. HipHop for PHP compilează codul în C++ (intermediar) ce ajunge cod mașină după ce este compilat de către g++. phc compilează codul în cod mașină, dar spre deosebire de Roadsend, nu este o implementare alternativă de PHP, ci folosește PHP Embed SAPI ce e parte a distribuției oficiale. Să zicem că dintre implementările alternative, este cea mai apropiată de către standardul "de facto", Zend. La o adică, prin bootstrapping, cineva ar putea scrie un compilator de PHP în PHP, deși nu prea văd pe cineva să investească atât de mult timp într-un asemenea proiect. Se face o confuzie gravă între limbajul de programare și modul de rulare a codului executabil. Adică versiunea cea mai uzuală, sub Zend Engine, ce ar intra (discutabil) la categoria scripting. Fapt valabil și pentru versiunea în engleză a articolului ce numește PHP limbaj de scripting. Exemplele date de către subsemnatul sunt suficient de variate pentru a forma o idee despre statutul actual al limbajului. Nu am înșirat lucrurile de mai sus doar pentru că m-aș pricepe să găsesc chestii pe vreun motor de căutare. Exceptând Raven PHP, am folosit PHP în toate formele descrise mai sus. Discuția "limbaj de programare" vs "limbaj de scripting" nu se rezumă la calitatea specificațiilor. Da, PHP e mai mult un mare hack și mai puțin o chestie ce a fost gândită de la zero ca fiind soluția pentru problemele pe care le rezolvă în prezent. Dar nu aceast fapt face această distincție. PHP este limbaj de scripting în aceeași măsură în care Python este, ca să trag o paralelă. Exemplul Python: moduri multiple de implementare, de la "interpretorul" oarecum standard cPython până la IronPython (.NET), Jython (JVM) sau PyPy (+ o stivă de alte implementări experimentale). Vorbind despre C, cred că este de acord toată lumea asupra faptului că este limbaj de programare. TCC (Tiny C Compiler) poate rula codul C ca și script (tcc -run). Poate folosi inclusiv sintaxa shebang (ca și PHP/CLI SAPI de altfel). Asta nu-l face "limbaj de scripting" sub nici o formă, doar îi oferă o formă "scriptabilă", dacă ar fi să inventez un cuvând ce să descrie situația. SaltwaterC (discuție) 15 iunie 2011 16:14 (EEST)
mulțam SaltwaterC pentru clarificări valugi (discuție) 15 iunie 2011 16:32 (EEST)

SaltwaterC de acord cu tine, dar cred că uităm lucrul elementar: codul php este diferit de core, așa că se încadrează lejer la scripting. Codul trecut prin HipHop de exemplu, nu mai este cod PHP sub nici o formă. Aceste "utilitare" sau "hack-uri" (cum vrei să le numești) au fost inventate dintr-o încercare disperată de a crește viteza anumitor aplicații scrise nativ în PHP (cazul hiphop - facebook). În momentul în care ai trecut cod PHP prin HipHop, ceea ce rezultă nu mai are legatură cu PHP deloc. Aceste "utilitare" pot sa aibă o pagina a lor pe Wikipedia și adaugate referințe către ele în articolul Php, pentru ca merită promovate. Paralela cu Python nu știu dacă își are rostul (aici), pt. că ne încurcăm în amănunte. Rezumând discuția strict la PHP-ul "original", despre care se vorbește cu precădere și în articolul Php: codul acestuia diferă de core, așa că îl putem încadra lejer la "scripting". Cu stima Vimishor (discuție) 15 iunie 2011 18:46 (EEST)

Paralela cu Python își are rostul. Este vorba despre același limbaj în diferite implementări. Cum este și cazul PHP. Singura problema este de fapt lipsa unei organizații ce să standardizeze specificațiile, deci Zend este "de facto standard", dar nu există un "PHP original" de care cineva să țină cu dinții despre cum ar trebui rulat codul respectiv (recte Zend Engine). Dacă eu vreau (și eventual să pot) să rulez WordPress sub Roadsend, Zend nu are nimic de spus aici. Ar mai fi și faptul că pentru Phalanger, Quercus și Roadsend nimeni nu și-a bătut capul să le țină la zi cu "specificațiile" 5.3.x, motiv pentru care nu au fost privite ca și implementări majore. Am dat mai multe exemple decât HipHop PHP. Iar în cazul HipHop, tot compilare se numește. HipHop nu este un utilitar ci este o implementare alternativă completă a unui subset al limbajului, unde partea cu subsetul e din motive de conveniență pentru Facebook, nu motive pur tehnice. Dar tot cod sursă PHP este la bază aka ce scrie programatorul. PHP a depășit de mult granițele unei simple rulări ca și script, iar implementările de mai sus stau dovadă. bcompiler generează bytecode ce poate fi rulat direct în Zend Engine, fără a avea nevoie de codul sursă original. Cum se întâmplă în cazul CIL / .NET sau Java bytecode / JVM. Iar asta fără a depăși Zend Engine aka mașina virtuală "standard" dacă vrei să o numești așa. La o adică aș putea să-ți livrez doar bytecode-ul pentru a putea rula o aplicație PHP. Se mai poate numi sursa "script"? În acest caz, PHP este un limbaj de scripting cam cât este și C# sub .NET. Mai mult, am zis de C și TCC. Merg mai departe și pomenesc G-WAN ca application server ce folosește "C scripting" (are la bază libtcc). Asta înseamnă că și C este "limbaj de scripting"? Sau "limbaj de scripting" pentru tine este un termen dat de cota de piața a implementării majore și nu de modul în care se ajunge la forma executabilă a codului ținând cont de toate implementările limbajului. bash, zsh, etc. nu au depăsit granițele descrise mai sus. Până și JavaScript nu mai este un limbaj de scripting pur sânge cum obișnuia să fie în vremuri istorice. Și da, știu că JS are ECMA în spate ca standard body, dar nu despre existența unor specificații formale era disputa. Cum am zis și mai sus: faci o confuzie gravă între limbaj și runtime. SaltwaterC (discuție) 15 iunie 2011 22:18 (EEST)
Deja complicăm discuția mai mult decât este necesar. Repet încă o dată: În articol este vorba despre rularea PHP ca și script, așa cum a fost gândit din start. Alternativele care le tot numeri tu există, dar nu au legătura cu articolul. Implementarea PHP-ului "nativă" este cea de a rula ca script. Implementarile 3rd party există, le cunoaștem, le folosim mai mult sau mai puțin, dar nu au ce căuta într-un articol (și discuție) care descrie implementarea originală a PHP-ului: și anume aceea de a rula sub forma de script. La hiphop este cod php până trece prin compilator, iar ceea ce rezultă nu mai are nici o tangență cu php. Este cod c++ nativ. Înțeleg și stiu că există "n" de alte implementări și rescrieri ale runtime-ului (caz hiphop), dar articolul face referire la rularea PHP-ului ca script, așa cum a fost gândit, așa cum este firesc să fie folosit, așa cum este definit pe site-ul oficial și așa cum îl folosesc peste 99% dintre utilizatori. Refuzul inițial a lui valugi de a modifica "limbaj de programare" cu "limbaj de scripting" a fost doar pt că "scripting" nu există în dicționar. Tu ai dus discuția într-o direcție care nu prea are legătură cu articolul Php despre care se vorbea inițial. Orice artificiu am face și oricâte tumbe am face, fiecare limbaj cu implementare sa mai mult sau mai puțin reușită, își are locul lui și se pretează la un anume task. Vimishor (discuție) 16 iunie 2011 00:34 (EEST)
Iar eu am simplificat-o într-o singură propoziție: este o confuzie gravă între limbaj și runtime. Ce nu e doar unul. Iar HipHop de departe NU generează cod C++ ce poate fi menținut direct. Este doar cod intermediar: "HipHop transforms your PHP source code into highly optimized C++ and then compiles it with g++ to build binary files". PHP = cod sursă, binary files = rezultat final. Nu trebuie să fac un desen pentru a explica conceptul. Ai vrut o părere 3rd party, o ai. Nu înseamnă că e musai să corespundă cu propria ta părere. Iar problema constă în marii teoreticieni ce au făcut o separare suficient de cretină între "limbaj de programare" și "limbaj de scripting" pentru a induce și mai multă confuzie. Din nou, tu dai definiția după cota de piață, ceea ce este puți relevant ținând cont de faptul că 99% dintre așa ziși programatori PHP sunt semidocți. SaltwaterC (discuție) 16 iunie 2011 01:04 (EEST)
Nu m-am gândit o secundă la faptul că hiphop ar transforma cod php în cod c++, pe care să îl modifici cum vrei. Exprimarea nu a fost una dintre cele mai reușite. Definiția nu a fost dată de mine, ci de cei care mențin proiectul PHP în viață. Wikipedia sustine scrierea articolelor in baza unor surse de încredere și nu a unor păreri personale. Eu am oferit ca sursă de încredere site-ul oficial PHP, valugi nu a reușit să dea o explicatie mai buna decat "nu există termenul în dex", iar părerea ta este foarte cuprinzătoare și argumentată, o respect în totalitate, îți dau dreptate într-o oarecare măsură, dar tot o parere personală rămane. Știu că te enervezi repede, așa că mai bine lăsăm subiectul să se răcească. Și așa ne batem gura de pomană, că articolul nu o să fie modificat decât de valugi. Mie unul mi-a făcut plăcere discuția cu tine și sper că nu am abuzat de bunavoința ta. Cu stimă Vimishor (discuție) 16 iunie 2011 02:33 (EEST)
articolul poate modificat de oricine, dar trebuie să fim atenți la ce zicem și ce surse folosim. vă propun să creați o secțiune "Evoluție" unde să tratăm cum a evoluat PHP, care era condiția lui initială conform definitiei de limbaj de scripting și cum a evoluat la ce e azi. Așa atăt argumentele lui Saltwater căt și ale tale vor fi incorpoate și lumea va întelege mai exact ce e și ce a fost PHP. Vi se pare ok? valugi (discuție) 16 iunie 2011 10:15 (EEST)
Eu sunt de acord. Se pare că totuși se poate discuta cu tine. Poate data trecută ai avut o zi mai proastă. Cu stimă Vimishor (discuție) 16 iunie 2011 13:58 (EEST)