当今在WWW是世界里,PHP已经是一个不可忽视的强大力量,身为开源的先锋,已经为各种的开源产品作出了表率作用,用现在流行的话就是,草根的力量,星星之火可以燎原,众多的一流网站国外的facebook,Iyohoo,国内有开心网,都是用以前被很多专家看不起的PHP来开发的,开源的产品成为主流已经成为可能。近几年,随着智能手机普及,手机硬件性能的不断提高,手机已经进入了一个新的阶段,PC机上的众多软件移植到手机系统上已经是大势所趋,移动系统软件已经成为,软件开发的重要增长点,PHP在移动市场的前景是什么呢?让我们来探索一下。
要说PHP在移动领域的开发,我们首先要先来介绍一个对与PHP和移动领域都很重要的名词“Widget”,要说到Widget,很多人可能都听说过,因为当今Widget是一个十分有人气的技术概念,在很多的领域都有应用,但恐怕真正知道什么是Widget的人就很少了,下面我先给大家介绍一下什么是Widget吧,简单的说 Widget就是轻量级的UI控件,为用户展示不同的个性化的信息。
目前Widget主要有4个大类:
一. 操作系统Widget(如苹果、Windows widget)二. 网站应用Widget(例如:Facebook、iGoogle。)。三. 迷你应用程序Widget(Yahoo Widget)。四. 手机Widget(OphoneOS widget,Android widget,诺基亚widgets)。
下面我介绍一下用PHP来开发widget的一段应用样例:
让我们来看看PHP-GTK
PHP-GTK是PHP的延伸模组,它可以让程式设计师写出在客户端执行的、且独立的GUI的程式。这个模组不允许在浏览器上显视GTK+的程式,它一开始就是开发来写独立的GUI程式的。
Widget是一个GUI程式中基本的functions和forms。最常用的几个Widget是:label、button、window、frame和text box。所有的widget都是来自於一个抽象的基本class─GtkWidget。每个widget都是一个class一个Widget一生大概都有五个时期:
1. 建立(Creation):宣告一个物件(declaring an object)
2. 放置(Placement):将它加入一个容器中(adding it to a container)
3. 信号连接(Signal Connection):接收信号以及进行动作(the action it will perform)
4. 显示(Display):它是否是可见的(whether it is viewable or not)
5. 删除(Destruction):关闭程式(closing of a program)
Container是一个可以包含其他widget的widget。大部分的widget都是container,例如:GtkWindow、GtkTable和GtkBox。除了这点之外,container跟其他的widget没两样,也可以被放到其他container去。Signal(s)当程式设计师在程式中做了一个动作时,程式需要有一个动作来回应使用者的动作。Signals使程式可以知道使用者做了动作并可以触发适合的回应。Callback就是当signal送出之後,被signal唤起的function。Callback会执行function传回一个值或是做一个动作。Callback就是signal的handler funciton。它可以是该signal的预设handler或着是程式设计师定义的function。要建立一个callback,就必须把function connect 到 signal。Signal Inheritance(继承)和methods一样,signals可以被物件继承。一个widget可以送出任何它的parent widget可以送出的还有它自己特有的signal。
你必须为PHP-GTK指定一个callback function当signal送出时来对signal做回应。把一个signal连接到一个function可以用connect() 这个object 方法达成。如下:
<?php
//建立一个GtkWindow
$window = &new GtkWindow();
//将"destroy" signal用connect() 方法连接到shutdown函式
$window->connect("destroy", "shutdown");
//建立一个GtkButton,按钮文字为"按我"
$button = &new GtkButton("按我");
$button->connect("clicked", "you_clicked");
//把GtkButton放到是container的GtkWindow中
$window->add($button);
//显示$window以及它的所有child widget
$window->show_all();
//进入程式主回圈(即程式启动之意)
gtk::main();
?>执行它的话,就会出现一个视窗,里面有一个写着"按我"的按钮,按下按钮程式就会执行you_clicked函式。在这个程式中,$window物件的"destroy" signal是在使用者按下视窗右上角的"X"时会送出的;而$button物件的"clicked" signal是在使用者按下该按钮的时候会送出的。最後那一行的gtk::main() 是一定要执行的,这样才能告诉电脑要开始执行程式,既然有开始执行,那就一定有停止吧? 没错,用gtk::main_quit() 就可以停止程式了。
介绍了PHP的widget应用,然后让我们看一下widget未来可能存在的巨大前景,在手机平台上widget的应用可以说是现在的热点,可以说widget的巨大前景就是在手机市场上,手机和Widget的关系可以说是已经十分密切了,几乎所有新兴手机操作系统平台都有对Widget的支持,而且都把widget看成很重要的一个部分,比如android和OphoneOS,webOS,从操作系统来看,手机巨大的市场价值和潜力让widget在未来有很巨大的市场。    现在在手机操作系统方面,和PHP同样是开源的操作系统android和OphoneOS可以说是未来widget的最好搭档,重所周知,android和OphoneOS的核心都是linux,而linux也是现在PHP在服务器市场的最佳搭档,从安全和开源的角度来看都将是未来手机平台的巨大推动力量。android和OphoneOS必然是未来widget的最佳发展平台。
Android 是Google开发的基于Linux平台的开源手机操作系统.象wm,Symbian一样 。同时用户界面UI设计得比Iphone还漂亮,估计未来市场也会不错。对于开发人员或公司来说,不需要购买license,这样极大地节省了开发费用。
OphoenOS是,中国移动主导开发的,采用了linux2.6的系统内核,而且兼容android所有应用的智能手机操作系统。也具备开源软件的所有优点。同时用户界面UI设计更加人性化,内置了中移动类似移动梦网等主要3G特色业务,未来的网络业务使用起来将非常便利。
从中国移动一贯的市场运作能力来说,这款操作系统以及手机,未来在移动自身的庞大用户市场上推广,可以预计会有比较不错的表现。做为开发人员来说不能不对它关注。未来的市场,和由此产生的高收入岗位空间,以及给个人创业带来的机会,都是不可小靓的。移动最近又刚推出了在线手机商店,都会进一步推动市场快速发展。如果大家有兴趣了解Android和Ophone,我给大家推荐2个地址:
学习Gphone Android可以去这里看看http://www.android.com。有很多开发经验交流内容。
想了解OphoenOS,可以去官方网站http://www.ophonesdn.com,入门教程很实用,有很多开发、移植方法经验交流的文章和帖子,入门不错。

解决方案 »

  1.   

    难道还要在手机上装个php环境?
      

  2.   

    进一步学习如果在你还想要更了解PHP-GTK,或是对于本文的内容有任何
    不明白的地方,这里提供你可以查询资料:PHP-GTK官方网站(En): http://gtk.php.net
      

  3.   

    进一步学习如果在你还想要更了解PHP-GTK,或是对于本文的内容有任何
      

  4.   

    简单的了解了一下ophone,ophonesdn网站上面介绍得这么细,应有尽有,无论是入门文章,还是深入研究都有很丰富的帖子,
      

  5.   

    看到一个网站是.php对这个网站的好感马上提升,.asp马上鄙视》
      

  6.   

    "手机开发刚出现的时候,我就触觉到。这是一个新技术的延伸。PC再怎么发展也都如此了
    但是我没想到PHP也能移植到移动上。。"
      

  7.   

    中移动财大气粗,联通有Iphone撑腰,但也是摇摇欲坠,电信还被黑了。中移动尽显老大风范。。
      

  8.   

    12楼美女咋就那么爱鄙视asp嘞。
      

  9.   

    个人觉得不能一味鄙视ASP网站,采用什么开发语言并不重要,关键是适合就可以了。
      

  10.   

    很有技术相当有技术含量。。heh 
      

  11.   

    我来说说如何安装Ophone OS widget开发环境,
    先安装Eclipse 插件 (WDT)如果你使用Eclipse作为Widget应用的开发环境,你还需要安装Eclipse插件WDT。WDT是Widget Develpment Tools的缩写,它集成了Wdiget工程开发需要的工具。这些工具可以实现Widget工程的创建、源代码的编辑、运行和调试等功能。WDT功能强大,可扩展性好,让Widget的开发变得更加简单和快捷。
    你可以在OPhone SDK中找到WDT安装包:/tools/ophone/jil-wdt-site.zip(不必解压该文件)。
    下面是WDT的安装过程:
    安装于Eclipse 3.4 (Ganymede)
    运行Eclipse,然后选择Help > Software Updates... 在弹出的窗口中点击:Available Software 点击Add Site...,然后点击Archive... 选中之前准备好的WDT安装文件,并确认返回。 在返回的配置窗口,将会列出待添加的插件。点击复选框项目 Widget Development Tools,点击Install... 在后续的安装窗口, "Widget Development Tools"将会被选中,点击Finish完成安装。
    重启动Eclipse。其他Eclipse版本,请根据Eclipse的帮助文件进行相应的插件添加。最后,当Eclipse重新启动,配置你的SDK的目录:Eclipse菜单选择Window > Preferences...,打开配置窗口。 从左侧控制面板选择 Widget配置项。 在配置项的内容面板, 点击Browse...,指定OPhone SDK安装的路径。
    点击Apply,然后点击OK。
      

  12.   

    ,我也要买一个试试。我身边的人都开始接触ophoneOS系统了。
      

  13.   

    总而这都是3G市场带来的。3G市场价格战已经开始,不管以后是手机电视,还是移动炒股,还是移动收发邮件办公OA。这都是3G市场所带来的。
      

  14.   

    widget?弹出窗口??QQ也算是吧。
      

  15.   

    widget是个很好的概念。不是技术。现在越来越多的PC厂商开始打移动市场。跟中移动合作的DELL就是个例子。他找了个好靠山
      

  16.   

    通过web访问php即可如果要在手机上做应用Ptk还不太成熟。
      

  17.   

    刚买了个DELL款ophone,玩了几天操作手感还是很不错的,软应方面。还是在看几天ophonesdn网站,上面介绍得挺细的。入门文章、深入研究都有很丰富。
      

  18.   

    平台选择Android和ophoneOS力荐。既然要移植也要选好平台。才不是枉费力气。
      

  19.   

    时时关注ophone动态,看来事关重要啊……
      

  20.   

    Android和ophoneOS是最能堪比iphoneOS系统,至于未来,就让别人说吧。
      

  21.   

    找年头用什么语言是其次,你得看网站内容,用php未必就是好网站
      

  22.   

    那我就来说说,iphone为什么牛,就是牛在软件应用上面。牛在系统上,牛仔概念上。现在能够跟iphoneOS系统android和移动的OS。但LS得兄弟说的确实,来中国混,迟早是要还得。
      

  23.   

    不知道PHP有没有那样的一天呢..
    ====================================用技术换广告,谢谢支持=====================================
    Ventes Batteries PC Portable, Alimentation PC Portable, Batteries Camescope, Appareil Numerique, des Chargeurs
    rolex watches, Replica Watches, Replica Watch
    R4DS Cartes, Cartes R4, R4 DSi, R4 SDHC Pour Nintendo DS / DS, Dsi 
    baterias
    R4DS Cartes, Cartes R4, R4 DSi, R4 SDHC Pour Nintendo DS / DS, Dsi
    R4DS Cartes, Cartes R4, R4 DSi, R4 SDHC Pour Nintendo DS / DS, Dsi
    R4DS Cartes, Cartes R4, R4 DSi, R4 SDHC Pour Nintendo DS / DS, Dsi
    R4DS Cartes, Cartes R4, R4 DSi, R4 SDHC Pour Nintendo DS / DS, Dsi
      

  24.   

    移动为什么有钱,中国用户三分之二的占有比例,所以说如若是中国移动这几年大力发展ophone的推广普及以及软件开发的话,那真是很有前途的国产开源手机系统。
      

  25.   

    PHP领域里这帖子还是真少。顶了。
      

  26.   

    现在移动开发是最热的。只不过现在最PC的都跟MS一样,是固化的人。没胆尝试新领域,螃蟹他们是吃不到了。
      

  27.   

    要说从php整到移动上,绝对不轻松的事情。目前最主流的开发系统就是Android OphoneOS IphoneOS,但国内这三种平台开发个人或团队都不多。何况iphone最具优势的软件应用在中国还没发商用。不知道拖到什么时候,最具发展潜力的还是android 和ophoneOS.现在移动开发还是集中于2G傻瓜系统symbian。智能机在全球数量的增加与被人们的热捧。Symbian系统本身已经很难满足现在智能机的要求了。
      

  28.   

    国内ophoneOS 国外ANDROID。移动市场的趋势流行化,让我们更加关注移动市场。你要说Iphone哪去了。对不起,我不想给苹果那99欧元。
      

  29.   

    ophone上线已经近1个多月,众家数说,有捧得,也有贬的。抛开这些看本质。我认为国货大旗在作祟。洋货在中国发展,必然有一个或几个国货品牌在一起学习甚至竞争。但挑出MS来说,微软盗版在中国是最泛滥的。人说为什么国家不治理呢?国务院的系统都是番茄花园的,他怎么治理。中国市场也绝对不会被国外品牌统治,绝不会在中国“被实践”的。别管你是SYMBIAN WM IPHONE ANDROID PALM 只要是 政 治 介 入,是绝对干不过OPHONE的,何况还是全球最大的运营商CMCC