实战PHP/GTK(转载)

实战PHP/GTK(转载)

刁馋 发表于 2002-2-19 15:25 PHP编程 ←返回版面     

以前PHP被认为只能用来编写服务器端的CGI程序,如果说PHP能够开发Windows下的GUI(图形用户界面)程序,你相信吗?最近,PHP的开发小组成功开发出了捆绑GTK+的PHP,那么就可以开发Windows下的GUI程序了。

一、建立PHP/GTK运行环境:
其实GUI程序和普通的PHPCGI程序没有什么区别,不过是PHP/GTK程序由GTK的类来生成GUI界面而已,他们同样是开放源代码,靠PHP来解析建立窗口。如果你已经建立好了PHP的调试环境,那么安装PHP/GTK环境比较简单:
1、下载php_gtk.dll(这个dll文件用于解析PHP源程序里面的GTK代码),下载后将其解压到PHP的扩展(extension)目录中;
2、下载其他PHP/GTK的dll文件(一共6个),将他们解压缩到Windows的system32目录里面;
3、打开php.ini,在扩展设置部分“Windows Extensions”最下面加入“extension=php_gtk.dll”的语句,建议先备份php.ini,避免修改失败使得建立好的PHP运行环境作废;
现在就建立好了PHP/GTK的运行环境了。当然,你也可以不作第二步,而改为在每个PHP/GTK程序源代码的第一行加入“dl('php_gtk.dll')”来动态加载GTK的支持。
如果你还没有建立PHP运行环境,那么安装要更加简单:
1、下载整个PHP/GTK的捆绑支持包,然后将他们解压缩到c盘的PHP4目录下面;
2、将winnt目录下面的dll文件拷贝到Windows的system32目录中,将php.ini文件拷贝到Windows的目录中;
建立好了PHP/GTK的运行后,可以用命令行模式的PHP来运行一个PHP/GTK程序:在运行中输入“c:\php4\php -q gtkprogrampath”,其中“c:\php4\php”改为PHP.EXE的路径,“gtkprogrampath”就是PHP/GTK程序的路径。比如:“c:\php4\php -q c:\php4\samples\hello.php”将会运行PHP/GTK运行包中附带的例子“hello world”程序。

二、编译PHP/GTK程序:
如果你作出一个PHP/GTK的应用程序,还需要对方的电脑建立PHP的运行环境并且使用PHP命令行模式来解析才可以执行的话,那就过于复杂了。那么怎么样才可以编译一个PHP/GTK的程序呢?经过一番搜索,笔者发现了PHPCompiler这个软件。
PHPCompiler由www.deskcode.com开发(http://www.deskcode.com/phpcompiler),可以将PHP编译成为EXE可执行文件,内置了PHP的支持,如果你要编译一个PHP/GTK程序,必须建立PHP/GTK的运行环境(参照前面的步骤)。要编译一个PHP/GTK程序的步骤如下:
1、打开PHPCompiler(如图),在“Script to”选择希望编译的PHP程序源代码,在“Destination”处选择编译成功后的EXE文件的路径;
2、点击“Compile”按钮,会弹出一个对话框询问使用的编译模式(如果是PHP/GTK程序就选择no,是单纯的PHPCGI程序就选择yes);
3、然后又会弹出一个对话框询问是否拷贝php4ts.dll文件到编译后的EXE文件的目录,选择yes。
经过上面的步骤,一个PHP/GTK程序就成功编译了,但是对于编译PHP/GTK程序还有几个需要注意的地方:
1、编译完成后的可执行文件如果需要执行,PC机上面必须具有GTK运行环境所需的几个dll文件(就是前面下载的那几个),如果需要作成应用程序,可以在安装的时候将几个dll文件拷贝到system32目录中(不过这样子程序也就不是“绿色软件”了^_^)。
2、PHPCompiler本身对于PHP的支持非常好,但是有些人试过用一些需要扩展支持的函数,比如“gzopen”等等,在编译之前还好好的,编译完毕后就不能用了。其实编译完成后的可执行文件,相当于了只有默认的PHP支持(连GTK支持都没有了),所以如果在程序中应用了任何需要扩展支持的函数,都必须动态的加载支持函数的dll文件,比如“dl('php_gtk.dll')”,这样子编译完成后才不会出错。
3、运行一个编译后的可执行文件,都会先弹出一个DOS窗口,然后自动关闭,因为每个GUI窗口都是通过GTK来“绘制”出来的,所以必须会有那个窗口。
4、或许以前PHP还不能说是真正的OOP(面向对象程序)语言,但是到了PHP/GTK,任何一个窗口都由GTK对象来“绘制”,如果没有过硬的OOP功底,是很难写出GUI程序的。

三、PHP/GTK资源:
1、http://gtk.php.net:PHP/GTK的官方网站;虽然说是官方网站,但是确简陋的很,出了一个FAQ和邮件列表,几乎找不到任何有用的东西了,
2、http://www.phpgtk.com:一个界面比较好的PHP/GTK网站,有最新的版本信息。
3、http://developer.gnome.org/doc/API/gtk/gtkobjects.html:PHP/GTK函数和类的大全/手册网站,里面有十分丰富的PHP/GTK资料。
4、http://www.phpuk.org/gtk/:非官方版本的GTK手册网站,简单易懂。

如果大家认为E文比较难看,也可以来zphp.com下载最新的PHP/GTK运行环境和支持包。

签名:

笑说情缘话从头
    傲依醉剑续前缘
       江山易改弹指间
           湖海云游野鹤闲

  

时间: 2024-12-20 11:25:25

实战PHP/GTK(转载)的相关文章

用PHP开发GUI

环境:W2k+php4.3.1+php/gtk0.5.2一个简单的记事本(只可以打开文件进行修改)<?phpset_time_limit (0);       // 设置运行时间 if (!class_exists ("gtk"))           // 判断是否有GTK模块    if (strtoupper (substr ($_SERVER["OS"], 0, 3)) == "WIN")        dl ("php_

用PHP开发GUI_php基础

环境:W2k+php4.3.1+php/gtk0.5.2一个简单的记事本(只可以打开文件进行修改)<?phpset_time_limit (0);       // 设置运行时间 if (!class_exists ("gtk"))           // 判断是否有GTK模块    if (strtoupper (substr ($_SERVER["OS"], 0, 3)) == "WIN")        dl ("php_

360用自家的产品打败了自己的360搜索

离360搜索横空出世的时间差不多快一个月了,想当初360搜索刚推出来的时候和现在对比起来用冰火二重天来形容一点也不为过.当360搜索刚出来,然后第二天铺天盖地新闻都是360搜索一举打败谷歌,搜狗,搜搜等,然后流量借助360浏览器强大的装机量和360导航的巨大使用流量陡升到10%,立升为中国第二大搜索引擎等的溢美之词都被冠在360搜索的头上,相信原因大家都是看好老周吧,因为他的一些特殊手段往往能收到一些出奇不异的效果.当年3Q借机上位了,现在大家也同样认为借助次此的所谓的3百大战.360搜索也能同

做好SEO 以下列举的几个阶段是必不可少的

提到SEO,一般最熟悉的就是原创.外链.站内.站外优化等.是的,听起来就几个字很简单,不过要真正做好,了解透彻的也并不是很容易了,分享一下我的感受吧!在我看来,SEO应该分为几个阶段,只有做好了这几个阶段,才算SEO真做好了. 一.SEO起步阶段,这个阶段就是网站刚刚做好,内容也是正在补充中,关健词也是刚刚确定好,网站刚刚拿到了备案号,域名也是新买的,对于网站来说一切都是新的,这个时候的SEO的工作主要就是优化代码,做好关健词的布局,提交好网站地图,把刚刚新的域名提交到各大搜索引擎,然后就是站内

百度8.22公告关于低质内容的详细解读

最近百度的几次大更新后,通过快二个月的观察,发现了一个新的现象,大家可以共同的探讨下了.前几天,百度的再次算法更新,也就是广大站长都知道的8.22公告,其中有一条很重要的话:搜索结果中的部份低质内容被清除,将进一步降低低质结果在搜索中的展现.重点打击胡乱采集和超链接作弊,然后这几天我也看了好多对于百度这次的8.22公告作了方方面面的解读,因这百度在这次发布公告的时候,下面重点列出了几大类,所以发现大多数的文章都是针对这几点做了解读,然后好多被K网站的朋友也对号入座了,发现这几点都不符合自己,于是

长尾关健词在不同时期的不同用法

长尾关健词大家都不陌生,言下之意就是比较长的,再则说就是优化起来难度比较小的,再则说来就是比较精准的,更有可能带来直接流量的.是的,确实是这样,长时间来说也确实也是这样,可是我这里要说的做长尾关健词也要分时间,分场合,我们做SEO目光不要仅仅停留在优化上面,有的时候我们还要以大局观来处理事情,不然的话,可能会得到适得其反的效果,通俗的来说就是做了无用功. 我当初也是一样,接触到很多关于长尾关健词的理论,自己当时感觉这样确实也是不错,这样确实也会降低优化的难度,而且听起来好像也可以带来精准的流量,

快照终结关健词点击器排名的时间不远了

6月底以后,百度的几次大更新,给广大网站留下的伤痛不用多说了,可是伤痛归伤痛,自我总结也应该是必不可少的了,通过近一个多月的观察,发现了一个新情况,可能大家也发现了,只是没有太引起重视,那就是大量网站的快照不怎么更新了,但是排名没有受到任何影响,然后百度也公布了可能有些误伤,后来百度也出台了些补救措施.但是到了这里,大家可能没有对这个快照不更新或者更新慢的问题进行深度思考了.为什么快照不更新了?或者更新了,但是更新频率也变慢了,好多本来以前隔天的,现在都不动,或者动得很慢,半个月或者一个星期才更

影响网站关健词排名的主要因素是什么 外链还是内容

接触SEO半年多了,虽然从时间上来看,可能还算是一个新人吧,但是也是看了好多好多的文章,吸收了大量的知识,正因为还没有处于高级阶段,所以还有很多很多的疑惑,当然这里对很多很多的砖家的看法也不尽苟同. 看到一篇帖子,或者一个砖家写的文章,一般的说法是:内容内王,外链为皇,然后高级一点的说法是现在已经不需要外链了,有内容就可以了,这个就是他们说所说的用户体验度,说做到了这点,网站就是王者了,就可以有好的排名了,事实真是这样吗,这样的说法真的是适合所有的网站吗 说这个之前,我们先假设一个前提,就是这个

谈我对阿里巴巴排名信息重发工具的看法

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 对于长期泡阿里巴巴的人来说,更新信息,重发信息都是一种体力活,一般人肯定都听过网上销售的一些辅助工具,是不是有一种尝试,购买的冲动?还有人不知道阿里巴巴信息重发工具的吗?或者叫阿里巴巴排名优化工具.我这里简要介绍一下,一句话概括就是用了阿里巴巴信息重发软件,腰不酸,手不累,一开软件实现自动重发信息. 阿里巴巴信息重发软件的诱惑宣传让我想起了昔