Building desktop apps in PHP

PHP-GTK is an extension for the PHP programming language that implements language bindings for GTK+. It provides an object-oriented interface to GTK+ classes and functions and greatly simplifies writing client-side cross-platform GUI applications.


The PHP-GTK was established in March 2001 by Andrei Zmievski an uzbek who lives and works in the United States. As well as many projects in free software, it also started with an initial motivation a little peculiar, “I did it because I wanted to see if it was possible” in the author’s words who inspired so much in another existing project, the PyGTK (link between languages ​​between Python and GTK). Andrei Zmievski visited Brazil in 2002, during the III International Free Software Forum, which made some presentations.

The PHP-GTK is a “language binding”, ie it is a link between two existing languages, PHP language and GTK library. So PHP-GTK is the PHP itself, with more features. The PHP-GTK is the first extension of the PHP language that lets you write client-side applications with GUI (Graphical User Interface). It was written in part to prove that PHP is a language and full of great purposes. The junction between PHP and GTK tool creates an independent platform that runs on both Linux and Windows environments.

Using PHP-GTK, you create an application that has connectivity to the server (database, access to files, etc.), like all other programs written in PHP, but that because of running on the client machine, also has full access to resources of this (run applications, write local files and access devices). For this purpose, PHP-GTK needs to be installed on each client machine that will run a PHP-GTK application.


Why this post?

So the main purpose of me writing or rather putting up this post is to actually disclose that i’ll be running a series where we would build full fledged desktop applications in PHP, and implement them in real life, these projects would be made open source for all.


Add comment

Your Header Sidebar area is currently empty. Hurry up and add some widgets.