Crearea de aplicații exe pe php

Știm cu toții că PHP este proiectat pentru a crea rapid pagini Web dinamice. În orice caz, este scris pe site-ul oficial al dezvoltatorilor PHP. Dar de ce nu încercați să găsiți PHP o "mică" aplicație diferită, de exemplu, încercați să creați o aplicație completă pentru Windows? Interesat? Apoi s-au grabit!

Pătrat negru

Aplicațiile sunt împărțite în console și ferestre. Să începem cu crearea primului, pentru că este mai ușor. Deci, mai întâi trebuie să decideți ce vom scrie. Vă sugerez să scrieți un simplu MD5 Base64 Encoder - un lucru în gospodărie este necesar și util, cu atât mai mult aici este totul simplu. Pentru a rula scriptul PHP din linia de comandă și pentru al transmite parametrii necesari, se utilizează următoarea construcție:

În ceea ce privește conținutul script-ului în sine, numărul parametrilor trecuți este stocat în variabila $ argc, iar parametrii înșiși sunt stocați în array $ argv. La această scurtă informare cu privire la aplicațiile consolei sa terminat și este timpul să începeți operațiunile active.

Pentru a nu vă deranja să scriu un scenariu, am decis să o scriu pentru dvs. Iată ce am primit:

Crearea de aplicații exe pe php

Scrierea este scrisă și acum cea mai interesantă este compilarea în aplicația EXE. Pentru a compila aplicațiile de consolă folosesc Roadsend Compiler Studio. Poate fi descărcat la www.roadsend.com după o înregistrare gratuită. L-ai descărcat? Acum, deschis Roadsend IDE, a crea un nou proiect (Project -> Nou), prevede parametrii necesari (script-ul nostru va recomanda sa-l arunce în directorul proiectului), am apăsați „OK“ și în cele din urmă a da proiectul râvnit -> Build. Acum, mergeți la dosarul cu proiectul și dacă ați făcut totul corect - în el veți găsi EXE finalizat. E totul? Da. E simplu, dacă știi niște nuanțe. Singurul lucru pe care l-aș recomanda este uneori util pentru a popamanit cu plug-in biblioteci, precum și puteți împacheta EXE UPX`m, deși acest subiect va fi atins pe mai jos. Acum mergeți la aplicațiile de fereastră.

Așa cum probabil ați ghicit - atunci când creați aplicații ferestre cu instrumente obișnuite PHP nu se poate face, deci mai întâi trebuie să alegeți un instrument pentru dezvoltarea ferestrei noastre. Dintre toate instrumentele cele mai multe sunt de două - este destul de exagerat PHP-GTK (www.gtk.php.net) și mai puțin promovate, dar nu mai puțin WinBlider funcțională (www.winbinder.org). Iată exact cazul în care cele mai necunoscute și cunoscute nu sunt atât de bune (acesta este IMHO meu), astfel încât pentru dezvoltarea primei noastre ferestre pe PHP vom folosi WinBlinder. Mai întâi trebuie să îl descărcați. Ești gata? Bine, mergem mai departe.

Codul este destul de simplu și cred că voi sta cu documentația timp de 1-2 ore. Veți începe să o înțelegeți în același mod ca și mine. Ei bine, acum culminarea - colectăm frunza de fereastră. Pentru aceasta, propun să creați un director separat și să transferați scenariul nostru acolo. De asemenea, trebuie să transferați folderul inclus din directorul phpcode al winbinder-ului. Ești gata? Acum ne compilam! Uh. Nu mai trebuie să luați IDE-ul Roadsend. Cum? Și aici este! El nu susține blinder-ul, ci doar susține GTK și judecând după răspunsurile vagi ale dezvoltatorilor Roadsend pe forumul lor - sprijinul pentru blinder poate aștepta încă mult timp. Cu toate acestea, vom șterge mormanul și vom căuta alte căi și vom numi aceste moduri Bamcompile (www.bambalam.se/bamcompile/). Cu toate acestea, din anumite motive, versiunea 1.21 nu funcționează întotdeauna și, uneori, compilează totul într-o aplicație care nu funcționează, dar versiunea 1.1 nu suferă de astfel de glitches, așadar vă recomandăm să o utilizați. Acum, cu generozitate alocăm pentru compilatorul nostru un dosar separat, venim în linia de comandă și comandăm cu mândrie:

Crearea de aplicații exe pe php

Dacă totul se face corect, atunci în directorul cu compilatorul va exista o aplicație fereastră proaspăt tăiată. Asta e tot. Voi adăuga doar că aș recomanda toate aplicațiile UPX`om (care merge direct de la Bamcompile).

Casca Magică

Toate cele de mai sus sunt, desigur, foarte interesante și informative, dar sunt momente când instrumentele potrivite nu sunt la îndemână. Ce să facem atunci? Mai ales pentru un astfel de caz, există o recepție foarte curioasă de a primi EXE prin șamanism în opțiunile SFX ale arhivei WinRAR. De exemplu, voi folosi primul nostru script pentru consola. În primul rând, plasăm scriptul într-un director separat, acolo copiem și php.exe și php * ts.dll. Apoi, creați același director run.bat după cum urmează:

Acum trebuie să împachetăm acest lucru bine, să selectăm toate fișierele pentru acest lucru, faceți clic dreapta și selectați "Adăugați la arhivă".

În fereastra care apare, selectați formatul arhivei RAR, setați comprimarea maximă și bifați "Creare arhivă SFX".

După aceea du-te în pliul „Advanced -> SFX Options“, se pune comutatorul pe „Zidește în dosarul curent“ în „Run după extracție“ prescrie „run.bat“, precum și în tab-ul „Moduri“ se pune o capusa „Despachetați la folder temporar "și setați și comutatoarele" Ascundere toate "și" Suprascrieți toate fișierele ".

Crearea de aplicații exe pe php

Pentru gust, puteți atașa pictograma dvs. în fila corespunzătoare. Acum confirmăm crearea arhivei și pe ieșire obținem EXE fără niciun compilator.

Nu-mi spuneți ce este problema și cum să o remediați.
Am php 5.2.4 sub Apache, funcționează bine
mulțumesc

Când fac clic pe Project -> Build, apare o eroare
binar nu este setat

E interesant. Pentru a crea aplicații de ferestre este foarte posibil, dar foarte simplu.
Similar cu exemplul de mai sus.

În pachetul Winbinder se formează, de asemenea, scris pe php.

Am încercat să lucrez cu o jumătate de oră, a fost îngrozit de fișierul - swap, care sa umflat la 1,7 GB. Am încercat, de asemenea, să scriu un calendar - un calendar, aceeași utilizare supradimensionată a resurselor.
Mă uit la PHP-GTK

Vă mulțumim pentru comentariu. Acum utilizatorii vor înțelege cu siguranță;)

În general, pentru a crea executabile funcționale ale aplicațiilor desktop Binder folosind bamcompile 1.21, așa cum am înțeles, proiectul ar trebui să includă biblioteca php_winbinder.dll. Apoi, totul este OK (cel puțin scenariul, dat în articol, arat perfect).
Și, așa cum este scris în arhiva readme bamcompile, cipul acestui compilator, din versiunea 1.2, este abilitatea de a se conecta la bibliotecile suplimentare de proiect, care anterior nu erau disponibile. De exemplu, puteți scrie binderovsky (PHP shny) script-ul funcționează bine cu biblioteca gd_2, dar după stabilirea EXE corespunzător folosind bamcompile 1.1, în cerere nu vor fi disponibile funcții grafice; în aceeași versiune a bamcompile 1.21, biblioteca gd_2 specificată poate fi conectată la proiect, iar fișierul rezultat va efectua deja funcțiile grafice corespunzătoare.
În general, a se vedea exemplele din dosarul bamcompile-arhivă - puteți găsi ceva util (în ceea ce privește specificarea creării êkishnikului).







Articole similare

Trimiteți-le prietenilor: