PHP的開源世界可謂至關精彩,其中你們也接觸的很多著名的PHP開源項目,好比Drupal、Sugar CMS、Joomla等等,但在本文中,筆者將選取9個最新知名度不是過高,但可在某些方面很實用,目前還在發展階段,頗有潛力的PHP開源項目。相信各位讀者看了以後會驚歎:原來PHP還能幹這麼多事情。php
一、PHP FOR Androidandroid
如今,iphone和Android大行其道,擁有它們已經成爲一種潮流。而Android的市場份額也變的愈來愈大。ios
而如今除了能夠用JAVA來編寫Android應用外,還多了一種選擇,那就是可使用PHP去編寫相關的Android應用了,這都要歸功於一個開源項目Php For Android(http://phpforandroid.net/)。它其實是利用了另一個開源項目Scripting Layer for Android(SL4A)( http://code.google.com/p/android-scripting/)提供的Android接口API去實現的,任何支持SL4A的腳本語言(好比Javascript,Ruby, Perl,PHP,和Python)都可以經過接口直接跟操做系統打交道,編寫應用。git
若是想了解這個項目,能夠閱讀以下的這篇文章《Build Your First PHP for Android Application》。github
二、PL/PHP數據庫
某些數據庫任務涉及很複雜的邏輯計算,而不是簡單使用幾句SQL語句就能夠解決問題。爲了下降其複雜性,許多數據庫的解決方案中提供了存儲過程,它在一個子程序中封裝了要完成任務的邏輯,這些子任何的功能其實就象PHP中的函數同樣。編程
存儲過程能夠用相應的SQL去編寫的,如微軟的存儲過程使用T-SQL,Oracle則採用PL-SQL。好比PostgreSQL數據庫能執行由C,C++,Java,Ruby,Perl,Python編寫的存儲過程,而有了PL/php 開源項目(https://public.commandprompt.com/projects/plphp/wiki),如今你可使用PHP去編寫存儲過程了。vim
當安裝了PL/PHP項目後,你就能夠在PostgreSQL下執行使用PHP編寫的存儲過程了,可使用你熟悉的PHP語法,十分簡單。ruby
三、PHP-QTapp
PHP-QT項目(http://developer.berlios.de/projects/php-qt/)容許你使用PHP語言去編寫實現QT的功能,也就是說,可使用PHP-QT去編寫一些功能強大的桌面應用。所謂QT是一個跨平臺的C++圖形用戶界面應用程序框架。它提供給應用程序開發者創建藝術級的圖形用戶界面所需的所用功能。Qt是徹底面向對象的,很容易擴展,而且容許真正地組件編程。
但有點遺憾的是,這幾年這個項目的發展有點遲緩了,若是確實有興趣的話,建議也去研究下PHP-GTK這個項目(http://gtk.php.net/)
四、Phuby
最近,Ruby核心團隊成員Aaron Patterson完成了phuby,它能夠在Rails應用下運行php應用程序。項目的地址在https://github.com/tenderlove/phuby,儘管項目主持人Aaron發佈了幾個視頻去證實phuby能讓php在Rails下運行,但實際上在Rails社區中,估計phuby也只是一個實驗品而已。
五、另一個phuby
Sean Huber也發佈了另一個同名的項目,竟然也叫phuby,但這個跟上面介紹那個是徹底沒任何關係的。項目地址在https://github.com/huberry/phuby。這個項目爲php增長了幾個有趣的功能,而只須要在php中設置include_path指向phuby的庫位置就能夠了。雖然該項目仍是處在比較初級的階段,但其實它已是綜合了php和ruby的一些特色了。
六、Objective-PHP and Moka
Objective-PHP and Moka are two ambitious projects headed by Stephen Lerodiaconou. TObjective-PHP(https://github.com/stevegeek/moka)和Moka(https://github.com/stevegeek/moka)這兩個項目是由Stephen Lerodiaconou.帶領研發的頗有野心的項目,他們爲PHP語言增長了Object-C語言和Cocoa framework(注:Cocoa是Mac OSX操做系統開發語言)。它們項目中的文檔宣稱這些新特性能吸引原來的Capucchino開發者。
你能夠觀看這個視頻(http://vimeo.com/9838953)去了解這兩個框架。
七、Php-serial
你想經過編寫php語言去操縱如視頻,音頻或計算機的串並口設備?如今是能夠變成現實了。使用php-serial這個開源項目(http://code.google.com/p/php-serial/),能夠很容易地去實現。好比只須要調用deviceSet()方法,將串口名傳遞進去就能夠了,接着就可使用簡單的讀和寫的方法了,好比:
八、Apns-PHP
在蘋果的操做系統3.0以上,你能夠享受到蘋果的推送信息的服務,簡稱Apple Push Notification Service(APNS),及時得到各種有用的資訊。
如今,你可使用PHP去實現這個功能了,apns-php項目提供了這個功能,項目的地址在http://code.google.com/p/apns-php/,該項目的文檔宣稱APNS API在2010年的12月17日已經完成了,能夠提供自定義提醒圖片和本地化的按鈕等新特性。
有一篇很好的入門導學文章指導你對apns-php的學習(http://blog.boxedice.com/2009/07/10/how-to-build-an-apple-push-notification-provider-server-tutorial/)
九、CFPropertyList
cocoa框架使用屬性列表來管理序列化數據。這些屬性列表能夠經過Apple的如plutil等工具進行設置。然而有的開發者但願用他們熟悉的方式去管理這些數據,目前有很多開源項目能夠實現這個目的,好比CFPropertyList就是其中之一,項目地址在:
https://github.com/rodneyrehm/CFPropertyList,它容許PHP開發者能夠建立屬性列表,以後發送到iPhone應用。