přejít na obsah přejít na navigaci

Linux E X P R E S, PHP jako klasický programovací jazyk

PHP jako klasický programovací jazyk

Před časem jsem četl článek nebo spíš malou informaci o tom, že probíhají pokusy vyvinout PHP tak, aby jej šlo použít i jako klasický programovací jazyk. Ne jen jako nástroj pro tvorbu WWW stránek nebo intranetových webových aplikací. Přiznám se, že jsem si to nedokázal představit.


Přede mnou se vyskytly otázky typu:

  • Jak asi bude vypadat struktura? Bude stejná, nebo se zdrojový kód bude lišit?
  • Bude k tomu vyvinut i nějaký grafický developer?

A protože jsem strašně zvědavý člověk a někdy i "hračička", začal jsem se o toto téma více zajímat. Hledal jsem nějaký (alespoň zkušební) kompilátor, developer a vše k této problematice potřebné. Kompilátorů bylo kupodivu více. Pro MS Windows i pro Linux. I když pro Linux bohužel méně. Některé byly free, jiné komerční.

Kompilátory pro MS Windows

Bambalam (BamCompile)

http://www.bambalam.se/bamcompile

Roadsend

http://www.roadsend.com

PHC Compiler

http://www.phpcompiler.org

Kompilátory pro Linux

Roadsend

http://www.roadsend.com

PHC Compiler

http://www.phpcompiler.org

Výše uvedené kompilátory byly ty nejhlavnější a nejzajímavější. Horší to bylo s developery. Těch už tolik nebylo.

Developery

Roadsend

http://www.roadsend.com

Windows, Linux

WinBinder

http://winbinder.org

Windows

Jako nejjednodušší příklad zde uvedu práci s developerem WinBinder a kompilátorem BamBalam. Obojí je pro MS Windows.

1.

Na disku si vytvoříte adresář, kde bude uložen váš projekt (včetně ikonky).

2.

Ve WinBinderu si vygenerujete GUI aplikace.

php1.jpg

Prostředí developeru WinBinder

3.

Vytvoříme si BCP soubor - soubor projektu (BamCompile Project).

; Bamcompile example project file
mainfile app\demo.php
outfile demo.exe
compress
windowed
icon app\hal.ico
embed app
extension app\php_winbinder.dll

BCP soubor "demo.bcp": Projekt s využitím GUI z WinBinderu

Popis je zde asi zbytečný. Každý jistě ví, co znamenají výrazy "icon" nebo "windowed". Důležitá je zde také položka extension. Tím se přidávají knihovny pro aplikaci (knihovny, které do EXE souboru budou zakomponovány). Je však důležité, aby byly pro danou verzi PHP.

; Bamcompile example project file
mainfile app\demo.php
outfile demo.exe
compress
; windowed
icon app\hal.ico
embed app
; extension app\php_winbinder.dll

BCP soubor "demo.bcp": Projekt pro aplikaci typu command line

4.

Naprogramujeme danou aplikaci a do ní zabudujeme GUI (viz ukázkové aplikace v balíčku BamBalam).

5.

Nakonec provedeme kompilaci celého projektu. Syntaxe kompilátoru BamBalam:

Syntaxe: bamcompile.exe BCP soubor
Příklad: bamcompile.exe demo.bcp

php2.jpg

Jednoduchá kalkulačka (ukázkový příklad z projektu BamBalam), dodáváno v balíčku.

Závěrem

Zkoušel jsem takto kompilovat, jako command line aplikaci, pokusný program přistupující k MySQL databázi, FTP serveru a vše fungovalo. Nepodařilo se mi zprovoznit "test" pro práci s Oracle databází, přestože volaný "test" přes "php.exe -f ..." fungoval bezchybně. Co se mi však nejvíc líbilo, že zabudované jméno a heslo pro přístup k FTP nebo MySQL nebylo ve výsledném EXE souboru čitelné, a to díky vnitřní kompresi (parametr "compress" v BCP souboru).

 

Nahoru

Přidat téma diskuse

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

René Baran

René Baran

René Baran (*1972) vystudoval pedagogickou fakultu JCU v Českých Budějovicích obor "Výpočetní technika a informatika". Ve volném čase se věnuje sportu, četbě, hudbě, programování a fotografování.


  • Distribuce: Debian / Mint
  • Grafické prostředí: MATE

| proč linux | blog