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应用。