Hvad er det bedste ved PHP ?

Tags:    php

Lige i øjeblikket forsøger jeg at gøre mig selv lidt klogere på, hvilken platform der giver mig som udvikler, de bedste muligheder.

De bedste muligheder, ikke de fleste.

Da jeg ikke kender så meget til Linux/PHP/LAMP platformen må jeg desværre erkende at jeg i øjeblikket ikke kan lave en fair sammenligning til noget andet.

Derfor kunne jeg godt tænke mig noget indsigt i, hvad i som PHP udviklere føler er det fedeste ved jeres platform



hvis man vil lære om kommandopropt ved du hvem man skal skrive med???




Efter at have leget en del med Ruby og Python må jeg erkende, at mange af de ting jeg er glad for i PHP, også går igen der. Deriblandt permissiv syntax - du kan slippe afsted med det meste, hvis kunden er på nakken af dig og du simpelthen er nødt til at levere noget grimt der virker, meget, meget hurtigt. Så kan du altid komme tilbage bagefter og rette det til.

Derfor må jeg sige at det der tiltrækker mig mest ved PHP, og grunden til at jeg stadig foretrækker det fremfor Ruby on Rails til webudvikling, er portabiliteten og udbredelsen. Hvis jeg skriver et stykke websoftware i PHP, og jeg holder mig nogenlunde indenfor normerne, så kan jeg være 99% sikker på at alle dem der henter programmet, kan køre det på deres lejede webhotel med 700 restriktioner. Med Ruby, Python mv. ender man tit ud i en løsning der kræver specifik dedikeret hosting til lige præcis dén applikation.

Derudover er der den fænomenalt store udviklerskare til PHP, der konstant bidrager med tuts, bugfixes, tredjeparts klasser mv.

Men rent feature-mæssigt føler jeg ikke at PHP har noget som konkurrerende projekter ikke har - eller omvendt, for den sags skyld.

EDIT: Hov, ja, jeg skal da vist også lige rundt og vende omkring PHP's typesystem.

Jeg får sikkert bank for at sige dette, men jeg er abnormt stor fan af det typesvage system PHP kører med. Der er typer, og du kan altid finde ud af hvilken type noget er, og du kan altid caste til en ny type, og du kan validere om noget er af den påkrævede type, hvis det er vigtigt -- men PHP lader dig, mennesket, bestemme hvad variablen kan indeholde. Det er det bedste fra begge verdener - masser af muligheder, ingen restriktioner.

Generelt synes jeg at restriktioner på parser/compiler niveau er åndssvage. Restriktioner på hvad man kan gøre med attribut X eller hvad man kan smide i attribut Y er specifikke for det enkeltes projekts workflow - der er ingen grund til at trække et bestemt workflow ned over hovedet på udvikleren, hvis et andet giver bedre mening for hans projekt.



Indlæg senest redigeret d. 24.09.2009 19:27 af Bruger #8223
At det er simpelt og effektivt er det der tiltaler mig.

Man skal ikke have runtimes og compilere, specielsyede server-miljøer eller hvad ved jeg. Det virker bare og er utroligt nemt at sætte op.

Derudover synes jeg det er super effektivt og i modsætning til mange andre sprog skal man ikke have noget "basis-kode" for at få det til at køre, det køre bare. Tit og ofte kan du også skrive en hel funktion på en enkelt linje, uden koden er helt i hegnet. Dette gør sig dog også gældende i andre sprog. Deres standard-library er også ganske omfattende og tillader avancerede operationer som at skrive til og læse fra filer med et enkelt funktions-kald.

Af features synes jeg det er værd at nævne PHP's magiske funktioner. __call som gør de muligt at overloade metoder der ikke eksisterer, __set der gør det muligt at overloade properties der ikke eksisterer osv.



Indlæg senest redigeret d. 24.09.2009 18:56 af Bruger #3275
Som nogle af de andre også er lidt inde på, så alt det med at slippe "uden om" at skulle compile og ikke behøve og have en standard kode for at det virker er dejligt.
Jeg har for noget tid siden undervist i PHP på begynder niveau, og det var så nemt for dem at komme i gang når de havde en idé om hvordan PHP fungerede (altså at det er server-side) og så de bare skulle skrive deres kode imellem <?php og ?> (sådan, i korte træk).

Samtidig så kan du altid blive bedre og bedre til PHP. Du kan skrive noget meget simpelt på din måde, og du kan gå op og lave store projekter med namespaces (i PHP 5.3), OOP osv.
Der syntes jeg fx med .NET at du skal have en ret god idé om hvad du har gang i før du kan få noget konstruktivt ud.

Og så selvfølgelig at uanset hvilken platform du bruger eller din host bruger (Win, Mac, Linux, Solaris osv.) så har du muligheden for at understøtte PHP.

Men Daniel, jeg kunne godt tænke mig at vide hvad du egentlig ved om PHP, og hvad din holdning til det er. Jeg ved godt du er .NET-person, men derfor ville jeg godt hører cons and pros, uden at vi skal starte endnu en religionskrig.



Alle de indbyggede funktioner er dem, der tiltrækker mig mest. Som en anden nævnte, kan visse ellers halvindviklede procedurer udføres med kun et par linjers kode eller funktionskald. For eksempel er det meget let at generere SHA1-værdien af en streng, imodsætning til .NET hvor jeg finder det unødigvendigt indviklet. Noget jeg er dybt skuffet over er understøttelsen for OOP. De grundlæggende og muligvis også væsentligste eller mest anvendte teknikker, eksempelvis nedarvning, er tilgængelige, men jeg synes der er så mange mangler og hvad for mig virker som uigennemtænkte tiltag. Jeg synes også det er latterligt, at de ændrer syntaksen for namespaces, når PHP altid har gjort brug af tuborgklammer til funktioner og klasser. Det er som at bryde en god tradition. Nej, hvad OOP angår holder jeg mig til .NET.

I starten tiltog PHP's enkelthed og typesvaghed mig også (ingen bank, Per :D), og den er helt klart også et plus for begyndere, og det er du jo, så i dit tilfælde kan jeg jo ikke rigtig sætte fingre på den, men i dag synes jeg personligt det er irriterende.

Til sidst er der det ved det, at PHP er let at lære, men at man lærer meget lidt om, hvordan det hele hænger sammen; eksempelvis hvordan variabler gemmes i hukommelsen og hvordan celler i hukommelsen kan pege på andre celler. I C++ kommer man jo eksempelvis ikke udenom pointers. Denne viden er måske ikke nødvendig for en PHP-udvikler, men jeg synes virkelig den er værd at anskaffe sig.



den er helt klart også et plus for begyndere, og det er du jo, så i dit tilfælde kan jeg jo ikke rigtig sætte fingre på den

Jeg håber ikke du snakker om mig ;)



Hvad er det bedste ved PHP?


Heh... godt spörgsmål...

Det må vel nok väre at PHP er lädt at gå til og som er et sprog hvor det er relativt let at läre at skrive og forstå kode.

PHP giver en rigtig god ide om hvad script(procedural) kode er og kan, samt at give et "ok" indblik i hvad OOP er og hvad man kan göre med OOP - med andre ord, så er PHP nok mere for nybegyndere end ASP/ASP.NET, Java, JSP, osv. er det - men PHP läre ikke så meget som god kodeskik eller megen disciplin når man koder.



Nej nej, jeg ved godt du har været i gang længe, Per. Jeg taler selvfølgelig om forfatteren af tråden. Angående kodeskik er jeg helt enig med Martin.



Indlæg senest redigeret d. 22.10.2009 01:13 af Bruger #8985
Her er mine tanker omkring emnet. Ret mig gerne her i foraet hvis jeg er helt galt på den :)

http://danielfrost.dk/post/ASP-vs-PHP-vs-ASPNET-vs-Daniel.aspx



t