php包管理工具
‘壹’ EasyTask简单易用的php常驻内存多进程任务管理器
PHP常驻内存的多进程任务管理器Composer包。以进程管理为出发点,同时也支持历培为每个进程设置定时执纳烂拍行功能,您可以用它来完成需要重复运行的任务(如订单超时自动取消,短信邮件异步推送,队列/消费者/频道订阅者等等),甚至处理计划任务。内置任务异常上报功能,异常错误您都可以自定义处理(例如实现异常错误自动短信邮件通知);还支持任务异常退出自动重启功能,让您的任务运行更稳定 ,洞羡工具包同时支持windows、linux、mac环境运行。
windows:PHP>=5.4 (依赖com_dotnet+wpc扩展) 文档+安装教程
linux|mac:PHP>=5.4 (依赖pcntl+posix扩展) 文档+安装教程
原文链接:https://gitee.com/392223903/EasyTask#--%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D--1
‘贰’ PHP开发通常使用什么工具(IDE)
从MX开始,DW开始支持PHP+MYsql的可视化开发,对于初学者确实是比较好的选择,因为如果是一般性开发,几乎是可以不写一行代码也可以写出一个程序,而且都是所见即所得的。 所包含的特征包括,语法加亮、函数补全,形参提示等。 不过DW生成的代码比较复杂,安全性也一般。在手写的方面,方便度一般,在调试环境方面表现差强人意。不太适合于比较复杂一点的编程。但对于初学的人是再好不过了。 ====================== ZEND DEVELOPMENT ENVIORMENT ====================== 和PHP靠得最近的ZEND推出的一款PHP的IDE,ZEND DEVELOPMENT ENVIORMENT。最新的版本为2.6,这也是在LINUX下面唯一一个PHP的集成开发调试环境了,当然它也有WINDOWS版本。 和其它的IDE不同,ZDE是用JAVA编写的~~这不光意味着多平台性,同样意味着很慢的速度,和比较奇怪一点的使用界面。尤其是它那将近半分钟的启动速度,让人无法忍受~~ ZDE提供的功能是最齐全的,而且可以和ZEND其它的PHP开发工具无缝的结合。成为一套强大的PHP开发环境,而且ZDE的调试环境是建在ZDE自身程序里面的,而不象其它的IDE,是通过PHP DEBUGER来实现的。 包含特征:语法加亮,完整齐全的函数补全和帮助(但只针对PHP内建函数,对自定义函数无效),工程管理,还有ZDE独有的PHP代码整理,PHP.ini可视化编辑和嵌套标示,使用后者在查看程序结构复杂的时候显得十分方便,在不用去数那密密麻麻的{}号了~ 提供的DEBUG功能包括breakpoints,stack,watches,variables,output buffer,以及所有该有的跟踪方式。 缺点主要是:1、速度慢~~2、使用上不是很方便。 ===================PHPED=================== 长期从事PHP开发的NUSPHERE公司推出的PHPED,最新的版本是3.12。 PHPED的综合性能是最好的,启动速度很快,提供的功能也是最多的。语法加亮,函数补全,工程管理,代码模版,自动代码补全,可视化的数据库管理,内置 DAV,CVS,ftp,WEBSERVER,DEBUGGER,以及JS代码列表,常见HTML标签集,另外PHPED还支持插件技术。 安装版还付带了PHP,MYSQL的手册(英文的)。值得一提的是PHPED的调试功能,虽然ZDE有它所有的调试功能,但是PHPED更方便,比如调试时将鼠标放在变量上就可以直接看到变量的值,而且调试窗口的分布较细致和合理,而且支持外部脚本调试,ZED虽然也能实现,但设置起来比较麻烦一点。 PHPED的脚本结构功能和ZDE差不多~不过在对类方面要好一些,细致到了类元素。 但PHPED的缺点也是很要命的,就是它对中文的支持很差~~甚至选取时都会显示不正常。另外要提醒的是,调试时变量值中文显示可以通过在DEBUGGER里面的设置,将语言改成GB就可以了~~否则含有中文的变量值是不能正常显示的~ ================ PHP EXPERT EDITOR ================ PHP EXPERT EDITOR 较新的版本是3.0,比较有特色的功能有:PHP语法检查,程序段书签,宏功能,代码模版,内建WEB SERVER,DEBUGGER。 PEE在代码结构分析上有一个特色就是可以看到每一个变量的分别出现位置,如果要跟踪是再方便不过了。 总的说,PEE是一个半调子编辑环境,在补全等方面显得不很方便。 最后给大家再介绍两个小的程序 PHPProcessor,一个PHP代码的优化和保护程序,可以通过去掉注释回车等减少PHP文件大小,将变量名改为晦涩的新名称降低程序可读性保护程序。内建了FTP工具,完善的备份措施,收费,15天免费适用,有功能限制。如果只是想减小PHP代码的大小的话,有另外一个免费的选择 HTMLShrinkerLight,只不过效果不如这个。 phpCB-devel,一个美化PHP代码结构,提高可读性的程序。很有用,如果是用ZDE的话就不用了~~免费的,速度也不错。
‘叁’ php文件用什么打开
第一种方法:用记事本打开。
1、选择需要打开的php文件,右击,如果有“用记事本打开”的选项,那么直接点击;如果没用这选项,那么选择“打开方式”;
3、可以看到页面有“代码”、“拆分”、“设计”三种,因为php只有代码,所以其他两种都看不了视图,不如直接用代码模式。而且可以清楚看到,在Macromedia Dreamweaver 中打开php代码才更容易修改的。
‘肆’ php中用来管理依赖关系的工具 是什么意思
Composer 是PHP的一个包依赖管理工具,类似Ruby中的RubyGems或者Node中的NPM,它并非官方,但现在已经非常流行。此文并不介绍如猜滚销何使穗游用Composer,而是备散关注于它的autoload的内容吧。
‘伍’ php使用sdk能不用composer吗
网上之前看到的,希望对你有帮助。
支持以下几种安装方式,推荐 使用Composer安装 方式 。
使用 Composer 安装
Composer是一个简单易用的 PHP 依赖管理工具。你可以在自己的项目中声明所依赖的外部工具库,Composer 会自动帮你安装这些依赖的库文件。
使用 Composer 安装 Qiniu SDK 的步骤非常简单:
#安装 Composer
curl -sS https://getcomposer.org/installer | php
#使用 Composer 获取最新版本的 Qiniu SDK
php composer.phar require qiniu/php-sdk
#代码中 require Composer生成的 autoloader
<?php
require 'vendor/autoload.php';
如果需要更详细的关于 Composer 的使用说明,你可以访问Composer官方网站,或对应的中文网站。
直接下载 Composer 安装包
鉴于某些原因,国内的用户使用 Composer 下载依赖库比较慢,开发者也可以直接下载我们准备好的符合 Composer 规范的vendor 压缩包并在本地解压。解压后的内容和使用 Composer 方式获取到的内容完全一致,之后的使用方式也一致。
下载源代码包
直接下载源代码压缩包并解压是另一种 SDK 的安装方法。不过因为有版本更新的维护问题,这种安装方法并不推荐,仅作为万一 Composer 安装有问题的情况下的一种备选。并且,源码中也包含 Qiniu SDK 的 autoloader。
下载源代码包后,解压到您的项目中。 然后在您的项目中引入 autoloader:
<?php
require 'path_to_sdk/autoload.php';
‘陆’ PHP网站服务器管理软件LuManager1.1正式版发布
LUM1.1版本的主要功能包括:负载均衡集群,CDN静态内容加速,云 备份 ,多用户,多用户组,自由切换 Apache 和 Nginx ,在线安装 微博 /论坛/商城等软件,批量上传,批量删除,在线 解压 ,网站和FTP流量限制,流量统计图表,SSL证书,301和302转向,防盗链,网站健康状态查看等和模。
LuManager(LUM)是基于FreeBSD、Zijidelu、Debian、Centos、 Ubuntu 等Linux/Unix系统的网站服务器管理软件,是目前国内市场上为数不多的同时支持Linux和Unix的网站服务管理软件。只要您会上网,就可以搭建和管理Linux/Unix服务器!完美支持Discuz、Phpwind、Shopex、ECShop、Ecmall、Wordpress、Dedecms、PHP168、CmsTop、Magento、Zen-Cart等常用 php + mysql 结构程序。LUM从已经有6年历史的FAMP分离出来的控制板面的升级版本,我们将其命名为LuMananger,即Linux/Unix的管理者,简称LUM。
LUM1.1版本的主要功能包括:负载均衡集群,CDN静态内容加速,云备份,多用户,多用户组,自由切换Apache和Nginx,在线安装微博/论坛/商城等软件,批量上传,批量删除,在线解压,网站和FTP流量限制,流量统计图表,SSL证书,301和302转向,防盗链,网站健康状态查看等
演示: http://demo.zijidelu.org:8888 (用户名:zijidelu,密码:zijidelu)
######------ LuManager杀手锏:
#-------- 负载均衡
当网站访问量过大时,就需要多台服务器同时提供服务,LUM的负载均衡功能可以将多台服务器组 合成 一个高承载高访问量的集群,是千万级以上访问量网站的解决方案。支持后端机器宕机时自动剔除,按后端机器性能分配等高级功能。
#-------- CDN静态内容加速
提供静态内容加速功能,让不同地区或线路的用户访问不同的服务器,是下载或镜像网站的解决销链方案(创建一个镜像网站是几秒钟的事情)。最简单的应用:可以非常轻松实现让电信用户访问电信服务器,网通用户访问网通服务器,老外就访问放在国外的服务器...可以增加任意多台服务器。支持更新缓存,用json数据格式返回删除结果。由于LUM自带了网站 监控 和流量统计功能,所以可以使用LUM搭建CDN服务器,对企业提供CDN服务。
#-------- 云备份网站
将网站数据经过高强度 压缩 和 加密 ,然后备份至远端服务器。支持多点备份和增量备份,是一种代替FTP和SSH备份的更稳定更可靠的备份方案。
#-------- Nginx与Apache自由切换
每个网站都可以自由选择以下三种模式:1.完全使用Nginx,2.完全使用Apache,3.仅PHP用Apache处理(即前台Nginx,后台Apache)。并且可以选择是否使用cgi处理PHP,杜绝502错误。
#-------- 在线安装常用软件
可在线安装Discuz/Phpwind/EcShop/EcGroupon/Xweibo/iWeibo等程序,会上网就会建网站!
#-------- 网站锁
可以将网站锁住,就算网站程序有 漏洞 ,也不会被挂 木马 或中 病毒 。
#-------- 多用户
每个用户都可以无限级添加自己的子用户,并且任何一个用户都可以成为超级管理员(更改config.php文件)。就像鸡生蛋,蛋再生鸡和寡蛋...
#-------- 多用户组
每个用户都可以拥有多个用户组,并为子用户指定用户组,然后可以通过用户组控制子用户的权限。LUM的权限控制可以精确到具体行为,如可禁止某用户是否有使用301转向功能,是唤斗缓否有重启服务器的功能等。权限控制是递归的,如果某个父用户没有 关机 的权限,那么其所有子用户都没有关机的权限了(可见越后端的用户,权限越小)。
#-------- SSL证书支持
可以用LUM直接生成ssl证书和证书申请文件,生成后马上就可以用(测试站点),任何人都可以创建支持SSL证书的站点,不需再用命令去操作。
#-------- 文件管理 器
能直接对文件或目录进行复制、上传、下载、删除、 编辑 、压缩、解压等操作,支持批量上传,批量删除,高强度加密压缩,支持分卷压缩。
#-------- 网站监控
可以看到每个网站的连接数、请求总数、成功率等信息
#-------- 301和302转向
可以设置301永久转向和302临时转向。
#-------- 网站流量限制
可以设置每个访客的最大线程和最大的游览网页的速度
#-------- 支持Linux和Unix系统
目前已经支持的系统有FreeBSD(Unix系),Debian,Ubuntu系列(Linux mint, 深度Linux,YLMF Linux,KUbuntu等),Redhat系列(RHEL, CentOS等)...最重要的,LUM不会破坏系统的 安全 保护机制,请放心使用!
#-------- 强大的流量统计功能
能统计网站的最近5分钟,10分钟,半小时,3天,7天、10天、180天,本月,本年等时间段流量。每天0点30分自动统计,支持日志回滚和自动切割,不需担心日志过大的问题。并且可以生成流量统计图表。
#-------- 支持套餐定制
可以对产品(FTP,虚拟主机, 数据库 )进行集中管理,如增加FTP的下载速度,限制FTP大小,控制FTP、网站、数据库的个数等,接下来还将开发支持限制资源使用的功能。
#-------- FTP,主机,数据库分离
一个FTP下可以建N个网站,一个网站可以连接任意多个数据库,数据库和网站只相关不相连。一个用户可以有N个FTP,一个FTP下又可以有N个网站。
#-------- 反向代理
只需填写被代理网址,别的都交给LUM去做,而且可以为代理网站开启静态缓存。
#-------- 身份验证
可以为网站增加一个访问用户名和密码,只有通过验证的用户才能访问网站。
#-------- 可选择常用软件的伪静态规则
包括Discuz、PhpWind、ShopEX、Wordpress等常用程序的伪静态规则。
#-------- Memcached缓存管理
在线启动和关闭Memcached,并可设置所使用的 内存 大小,连接数,是否 开机 启动等。
#-------- 在线更改系统密码
我们最终的目标是实现让用户不必懂任何一个命令即可管理成百上千台服务器,我们离目标又近了一步。
#-------- 保护密码
每个用户都可以设置保护密码,如果没有保护密码,就算登陆LUM控制面板,也不能进行危险操作。#p#副标题#e#
#-------- 禁止直接访问phpMyAdmin
可以在后台关闭phpMyAmin的直接访问,只能通过LUM后台才能访问phpMyAmin。
#-------- 禁止 root 用户 远程 登陆系统
还想通过暴力行为登陆SSH?没门!
#-------- 防盗链
不仅可以设置允许链接的 域名 ,还可以设置被盗链时的默认图片。
#-------- 备份与还原
支持对网站,数据库或者普通文件夹直接打包备份或者解压还原,支持 zip , tar.gz, bz2等压缩格式。
#-------- 操作系统行为控制
支持在后台直接重启,关机,Nginx,Apache,MySQL,Pure- ftp d等软件的重启,重载,关闭等功能。
#-------- 操作FTP和网站的文件权限互通系统
开通网站后,能过FTP上传程序即可使用,不需改文件权限。通过FTP上传的文件在网站程序中可以编辑或删除,网站生成的文件在FTP中也能编辑或删除。而且可在编辑虚拟主机时一次性将网站所有文件更改成777、775、644等权限。
#-------- 在线下载远程数据
填入远程文件的网址,轻轻一点便可以将远程文件下载,然后还可以解压,然后还可以移动...
#-------- 错误页控制
支持在后台控制403、404、500、501、502错误页
#-------- FTP和网站目录自由定制
可以将FTP定在/home/以外的分区。
#-------- 安全可靠,防止跨站攻击
不论使用的是Apache还是Nginx,都不可以跨目录访问别的网站。进行危险操作时需提交保护密码;防止远程提交form;验证码需要点击才能显示等。
#-------- 在线编辑配置文件
可在后台编辑php.ini、my.cnf、httpd.conf、nginx.conf、pure-ftpd.conf等文件。
#-------- 支持Nginx和Apache扩展设置
在后台便可以操作httpd和nginx.conf文件内容,不必用ssh操作。
#-------- 可查看程序进程和版本信息
在后台首页可以查看程序运行时的状态,包括进程数,程序版本等。
#-------- 硬件信息
可查看CPU, 硬盘 ,内存的等硬件信息,查看内存和硬盘的使用情况,可对服务器的性能进行评分,让您对服务器的性能了如指掌。
#-------- 漂亮和人性化的操作界面
大量采用ajax无刷新技术,不仅简便,而且更符合操作习惯,操作起来就像在操作 桌面 应用程序。
#-------- 增加保护目录
管理员可以将常用的伪静态文件存放在/home/lum_safe_files的保护目录下,升级了LUM后不丢失。
#-------- 在线升级
具有指纹验证功能的在线升级功能,确保您不会因官方域名被劫持而升错文件
#-------- 可为每个网站定制Nginx的http段和server段的扩展内容
再也不必通过vi来编辑nginx配置文档了。
######------ 下载和安装说明:
1. 安装系统:最小化安装系统(最好是全新安装系统,VPS用户可跳过此步骤,也可以在VPS控制面板中重装系统。如果是实体机用户,我们建议您选择ZijideluOS)。
用最小化方式安装FreeBSD的图解教程。
Debian最小化安装图文教程
CentOS 5.4 最小化安装 视频 教程
使用LuManager时的分区建议
在VPS上安装LuManager的视频教程
2. 登陆系统:用超级用户root登陆系统。如果是FreeBSD,请切换到/home目录(cd /home,如果没有/home目录,则切换到/usr目录)。我们建议您用ssh工具并设置成UTF-8编码登陆服务器,因为那样可以看到中文提示。SSH工具用putty,设置UTF-8编码的方法见。
3. 下载zijidelu_install.sh安装 脚本 :wget http://down.zijidelu.org/zijidelu_install.sh(FreeBSD系统则用fetch代替wget)
4. 赋予zijidelu_install.sh可执行权限:chmod 750 zijidelu_install.sh(或者chmod u+x zijidelu_install.sh)
5. 安装: ./zijidelu_install.sh -y (此为全自动安装,如需半自动安装,请不用-y参数,即: ./zijidelu_install.sh )
6. 选择您要安装的版本:选1为1.0.X,选2为1.1.X#p#副标题#e#
‘柒’ 没有composer可以安装或者正常使用laravel么
安装Composer Laravel框架使用Composer(PHP包管理工具,参考 Composer 中文文档)来管理代码依赖性。 首先,你需要下载Composer的PHAR打包文件( composer.phar ),下载完成后把它放在项目目录下或者放到 usr/local/bin 目录下以便在系统中全局调用。在Windows操作系统中,你可以使用Composer的Windows安装工具。 安装Laravel 通过 Laravel 安装器安装 先下载 Laravel 安装器 PHAR 文件。为了方便起见,将该文件重命名为 laravel 并移动至 /usr/local/bin 目录。完成后,只需在你指定的目录下输入简单的 laravel new 命令即可创建一个全新的Laravel安装。例如,laravel new blog 将创建一个名为 blog 的目录,该目录中包含了一份全新的Laravel安装以及所需的依赖项。这种安装方法比通过 Composer 安装要快许多。 通过 Composer create-project 命令安装Laravel 还可以通过在命令行执行 Composer create-project 命令来安装Laravel: 复制代码 代码如下: composer create-project laravel/laravel --prefer-dist 通过下载Laravel包安装 Composer安装完成后,下载最新版Laravel框架,把它解压缩到你服务器上的一个目录中。然后在Laravel应用冲凳的根目录下运行命令行命令 php composer.phar install (或者 composer install )来安装所有的框架依赖包。在此过程中,为了成功完成安装,你需要在服务器上安装好Git。 当Laravel框架安装好后,你可以使用命令行命令散卜旅 php composer.phar update 来更新框架。 服务器环境要求 Laravel框架有一些系统要求: PHP最低版本: 5.3.7 MCrypt PHP扩展 从PHP 5.5版本开始,针对某些操作系统的安装包需要你自己手工安装PHP的JSON扩展模块。如果你使用的是Ubuntu,可以通过, apt-get install php5-json 命令直接安装。(译者注:还是Ubuntu傻瓜化啊!!!) 配置 Laravel框架几乎无需配置就可立即使用。你可以自由地快速开始开发。然而,你也许希望先查看下 app/config/app.php 配置文件和相关的文档说明。它包含了一些你也许要修改的配置选项,如 时区 和 地区弊悄 等。 复制代码 代码如下: Once Laravel is installed, you should also configure your local environment. This will allow you to receive detailed error messages when developing on your local machine. By default, detailed error reporting is disabled in your proction configuration file. Note: You should never have app.debug set to true for a proction application. Never, ever do it.
‘捌’ 怎么使用php 包依赖管理工具 composer 执行命令安装
CentOS7下安装Composer安装Composer1、将composer.phar下载到项目中使用curl-sShttps://getcomposer.org/installer|php下载Composer的二进制文件,是一个PHAR包(PHP的归档)2、可以通过--install-dir选项指定Composer的安装目录(它可以是一个绝对或相对路径):curl-sShttps://getcomposer.org/installer|php----install-dir=lumen3、如果把composer.phar放在系统的PATH目录中,就能在全局访问composer.phar。在类Unix系统中,你甚至可以在使用时不加php前缀。可以执行这些命令让composer在你的系统中进行全局调用:#mvcomposer.phar/usr/local/bin/composer现在只需要运行composer命令就可以使用Composer而不需要输入phpcomposer.phar。4、检查Composer是否正常工作,只需要通过php来执行PHAR:phpcomposer.phar这将返回给你一个可执行的命令列表。使用Composer要在项目中使用Composer,只需要一个composer.json文件。该文件包含了项目的依赖和其它的一些元数据。现在使用Composer来安装项目的依赖。1、创建composer.json文件在当前目录下创建composer.json文件,在composer.json文件中指定requirekey的吵凳值。简单的告诉Composer你的项目需要依赖哪些包。例如:{"require":{"monolog/monolog":"1.0.*"}}可以看到,require需要一个包名称monolog/monolog映射到包版本1.0.*的对象。包名称由供应商名称和其项目名称构成。2、安装依赖包执行install命令获取定义的依赖到本地项目:phpcomposer.pharinstall如果你进行了全局安装,并且没有phar文件在当前目录,使用下面的命令代替:composerinstall这将会找到monolog/monolog的最新版本,并将它下载到vendor目录。这是一个惯例把第轮棚三方的代码到一个指定的目录vendor。如果是monolog将会创建vendor/monolog/monolog目腊碰则录。注意:install命令将创建一个composer.lock文件到你项目的根目录中。3、自动加载除了库的下载,Composer还准备了一个自动加载文件,它可以加载Composer下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中:require'vendor/autoload.php';现在我们就可以使用monolog了
‘玖’ 大家给推荐一个php开发工具 哦 !
PHP开发工具汇总
这里个人推荐一些 PHP IDE 工具,非常见的 Editplus 之类的,都是专门为 PHP 开发的,个人感觉方便容易入手啊简单操作,找出自己用得顺手的就可以了,呵呵,自己最近再考虑试试尝试下 Zend Studio 作为开发工具,因为调试和编写都很方便,代码检测功能和手册查阅功能,所以想试试 嘿嘿。
下面有提供些为PHP设计的IDE,editplus,Ultra Edit等常用文本工具我就不介绍了!其中一些介绍是从那些下载站里复制过来的!
Zend Studio
开发商:
http://www.zend.com/store/procts/zend-studio.php
目前公认的最强大的PHP开发工具,这种集成软件包包括了用于编辑,调试,配置PHP程序所需要的客户及服务器组件,软件包具有工业标准的PHP开发环境,代码完成引擎,功能齐全的调试器等
NuSphere PHPEd
http://www.nusphere.com/
PhpED 通过无与伦比的PHP调试和压缩能力,以及一个新的NuSOAP web服务向导成为了PHP领域的领军产品。更加强大的Project Manager使得发布站点和应用程序比以前更加容易。现在可以在线程级别对正在运行或者开发中的程序进行测试和调校。支持 CVS 版本控制,而且,对PostgreSQL和MySQL数据库的本地支持为PHP使用开源数据库提供了一个广泛的环境。但对中文支持不太好,汉字都当作单字节处理了。PHPED还有Linux版本。
PHP Coder
http://www.phpide.de/
PHPCoder用于快速开发和调试PHP应用程序,它很容易扩展和定制,完全能够符合开发者的个性要求.1:结合了PHP编译器和参考文档,可以对编辑中的PHP脚本进行即时预览2:支持高亮显示HTML和PHP代码;3:自动完成功能,可以自动完成用户自定义代码片断;4:标准函数提示;5:有专门的工程项目管理器;6:对象浏览器搜寻编辑中文件的包含信息,自定义函数,并以树形显示.7:支持查找对称的语句标记符;8:支持高级搜索和替换;9:自带FTP功能;10:支持运行和断点调试11:......总之,PHPCoder是一个非常实用的,功能强大的编程环境,而且它是免费的!
Ankord PHP Expert Editor
http://www.ankord.com/phpxedit.html
PHP Expert Editor是一个容易使用的 PHP 开发工具,它的功能照顾到初级者及专业开发人员。 PHP Expert Editor 内建 http server 用作测试及除错(你也可以使用其他 http server), PHP 语法检查, FTP 功能, 程式码样板等功能。
DzSoft PHP Editor
http://www.dzsoft.com/dzphp.htm
专为 PHP 所设计的网页程序编辑软件 - DzSoft PHP Editor,具有 PHP 编辑、侦错、浏览、原始码检视、档案浏览、可自订的原始码样本..等功能,无须架设网站主机就可以测试 PHP 指令码,是一套功能强大的 PHP 编程软件。
DzSoft PHP Editor和Ankord PHP Expert Editor非常相识,几乎找不到他们的主要区别,关于这两个软件之间的具体内幕我也不太清楚!
Dev-PHP IDE
http://devphp.sourceforge.net/
非常好用的php编辑器,支持php-gtk,内建许多快速html表单,非常的好用,本身含繁体语言包,另附暗地论坛的中文语言包
Master PHP
http://www.gsoftwares.com/
一款支持PHP, PHP3, PHTML, CSS, JS, HTML, HTM and SQL的编辑器,它允许用户编辑多种一次编辑多种文件,允许插入,运行和最优化程序的脚本,用户可以通过工具栏定制按钮和窗体,可以导出html和rtf格式,支持18种语言
Komodo
http://www.activestate.com/Procts/Komodo/
Komodo支持在Windows与Linux上,Perl、Python及JavaScript等的程序语言开发,以及多种程序语言语法不同颜色标注。这款功能强大的IDE竟然不支持中文,连中文文件名的文件都打不开!
Maguma Studio
http://www.maguma.com/
Maguma Studio包含了编辑和调试 PHP 程序所有必须的工具。无论您是经验丰富的开发者、或是初学者它都适合您。带有十分完整的断点、分步等调试功能。支持以树形方式显示文件中的函数和类成员。
PhpLens
http://phplens.com
PhpLens是一款专为PHP开发人员准备的快速数据库开发程序。通过使用PhpLens,可以快速的设计、发布和维护数据库驱动的网络产品。它允许你以HTML表格的形式对数据库进行浏览、编辑、创建、删除和查找。不用写任何代码,它就允许你完成上述操作。
简单推荐到此吧,有什么好滴东西,大家都拿出来共享下咯,嘿嘿,上面的这些软件都很强大,但我个人而言还是比较习惯用editplus。一方面自己水平不够,这些软件的很多功能都还不懂得如何充分利用,浪费丫,另一方面自己的英文太差,想灵活应用这些工具还有必要先提高下自己的E文啊 见笑啦,同时自己使用editplus的时间也比较常,比较顺手吧 ^_^
‘拾’ 如何利用 onion 管理 php 专案
相信只要是 Ruby 开发者,都会对 Gem 这个专案套件管理机制非常赞赏。而其中还有一个很棒的工具叫做 bundler,它能在我们布署专案时,协助我们处理专案所会相依的 gem 套件。
PHP 在这方面虽然旅脊余有 PEAR 这个套件管理库,但是能够处理专案相依套件的功能却付之阙如。所幸网路高手 c9s 也发现了这个问题,因此他便开发了 Onion 这个非常好用的 PEAR 套件管理工具。(http://hounwang.com/lesson.html)
在“ 利用 GitHub 建立自己的 PEAR 频道”一文中,笔者曾简单地介绍 Onion 建立 PEAR 套件的方式,本文将继续为大家介绍 Onion 的其他强项功能。
Onion 入门
1. 安装
Onion 的安装很简单,只要透过 curl 指令就可以快速安装:
$ curl -s http://install.onionphp.org/ | sh
这样一来, onion 指令会被安装在个人家目录的 bin 资料夹下。如果你不想放在这个路径,那麽你也可以从以下路径直接下载:
https://raw.github.com/c9s/Onion/master/onion
然后再将它设为可执行,
$ chmod u+x onion
并搬移至系统 PATH 环境变数所找到的路径下即可,例如 /usr/local/bin/ 。
2. 功能简介
安装好 onion 指令后,直接输入:
$ onion
将可以看到以下输出:
alt
▲ 1:onion 指令之输出
在 onion 中可以使用的指令有:
help:显示说明文件,如图1 所示。
init:初始化 package.ini 文件。
build:建立 PEAR 套件。
compile:将目前的专案编译为 Phar 格式的函式库。
install:在 vendor 目录下,安装目前专案所相依的套件。
bundle:同 install 指令,为旧版相容用。
self-update:自我更新成最新的版本。
以下为大家介绍如何使用这些功能。
3. 专案初始化
在新版的 Onion 中,我们可以直接利用 init 指令来帮我们建立一个预设的 package.ini 档案,语法格式如下:
$ onion init<dir>
package.ini 是 Onion 用来管理套件所必要的档案,稍后笔者会再为大家详细介绍它。
4. 建立 PEAR 套件
在“利用 GitHub 建立自己的 PEAR 频道”一文中,笔者已经介绍过 build 指令的用法:
$ onion build --pear
这样一来, Onion 会透过 PEAR 的内建功能,为我们把目前的专案打包成 PEAR 可以接受的压缩档格式。
5. 编译为 Phar 格式的函式库
PHP 的 Phar 格式类似 Java 中的 JAR 格式,可以将套件下所有的 PHP 档案全部包成一个压缩档,方法如下:
alt
▲ 2:onion compile 的范例指令
这麽一来我们会得到一个 example.phar 的档案,而程式进入点则为专案中的 example.php。以下方式就可以让这个 Phar 档直接执行:
$ mv example.phar example
$ chmod +x example
$ ./example
注:如果各位打算将套件打包成 Phar 档的话,那麽要注意 require(_once) 及 include(_once) 所引入的档案路径,必须是相对的才行
6. 安装目前专案所相依的套件
在开发 Ruby 专案时,我们可以用 Gemfile 来管理相依的套件;而这对 Onion 来说,也是很容易的事情。
在 package.ini 中定义好专案所相依的 PEAR 套件后,就可以用以下指令来安装:
$ onion install
接下来 Onion 就会把这些相依套件安装在专案的 vendor/pear 路径下。至于如何在 package.ini 设定相依套件,稍后笔者会再详细介绍。
7. 自我更新版本
c9s 所开发的 PHP 工具几乎都有这个强大的功能,可野州以自行将工具的版本升级,指令拆滚如下:
$ onion self-update
这样一来,就可以更新到最新的版本。
package.ini 常用设定介绍
接下来笔者要为大家介绍 package.ini 中,几个比较常用区段的设定说明。
1. package
这个区段是在执行完 init 指令后,就会自动建立好的。 Onion 会事先提供:name、 version、 desc 及 author 等四个参数;以下为目前所支援的参数说明,标明“选用”的参数可以不写:
[package]
; 套件名称
name = Your Package Name
; 套件描述
desc = Description
; 同 desc (选用)
summary = ....
; 套件的官方网站 (选用)
homepage = http://your.web.com
; 版权说明,预设为 PHP (选用)
license = PHP
; 版本号
version = 0.0.1
; API 的版本号,预设同 version (选用)
version.api = 0.0.1
; 套件频道,在打包成 PEAR 压缩档时会需要用到
; 预设为 pear.php.net (选用)
channel = pear.php.net
; 专案作者
author = Author Name <author@example.com>
; 专案有多个作者时可以用以下方式定义 (选用)
authors[] = Author Name <author@example.com>
authors[] = Author Name
; 程式码贡献者及维护者 (选用)
contributors[] = ...
maintainers[] = ...
2. require
这个区段主要描述专案所需要的环境及相依套件,它们在使用 install 指令时会用到;预设不会提供,需要自己加入。
[require]
; PHP 版本,可加入 > 及 < 等前置字符
php = '> 5.3'
; PEAR 安装程式版本
pearinstaller = '1.4.1'
; 专案所相依的 PEAR 套件,格式为“频道/套件名称 = 版本号”
; 其中版本号可以省略,这样 Onion 会直接下载最新版本
pear.channel.net/package = 1.1
; 相依套件的另一种写法,直接使用 URI 定义
package = http://www.example.com/Foo-1.3.0
; 专案会用到的 PHP extension
extensions[] = 'reflection'
extensions[] = 'ctype'
extensions[] = 'pcre'
3. roles
这个区段主要在定档套件中档案的角色,它们会依照角色的不同,被安装到适当的位置里。
[roles]
; 通常套件如果有提供 shell script 的话,可以将它放在 bin 目录下
; 并且给它 script 角色,那麽在透过 pear 指令安装时,
; 它就会被安装为系统指令
bin/your_script = script
; 其他副档名的角色,支援万用字符 (*)
*.md = doc
*.php = php
其他的区段在实务上笔者几乎用不到,若是有使用上的疑问,可以请教原作者 c9s。
范例
以下笔者将用 Library 及 Web Applicaton 这两种不同的范例,来介绍 Onion 在实际专案上是怎麽使用的。
1. Library
通常我们会希望开发出来的功能是可以被重复使用的,这时把它们打包成 library 是明智的选择。这里笔者将介绍
首先我们要依照 Onion 所规范的方式来定义专案的目录结构,假设专案的路径为 /path/to/library:
$ mkdir -p /path/to/library
$ cd /path/to/library
$ mkdir bin src docs tests
其中 bin 是放置 Shell Script,src 是存放 PHP 程式原始码;docs 则是用来存放文件,tests 则放置测试程式。
接下来我们要建立 package.ini ,执行:
$ onion init .
建立 package.ini 后,修改里面的内容:
[package]
name = UriFetcher
version = 0.0.1
desc = Fetch and cache data from URI
author = Jace Ju <jaceju@example.com>
channel = pear.jaceju.net
[require] php = "> 5.3"
pearinstaller = 1.4.1
[roles] bin/urifetcher = script
*.md = doc
*.php = php
这里我虚构了 UriFetcher 这个套件,它必须在 PHP 5.3 以上版本执行;另外这个套件也提供 urifetcher 这个 Shell Script ;当然,这里的内容只是范例,请大家依实际状况调整。
现在我们可以开始撰写套件内容了,这边就不再为大家详细介绍程式内容,只单纯列出这个套件的档案清单:
alt
▲ 3:onion - library tree layout
在 src 目录下,所有 PHP 类别档的命名与路径都要按照 PHP FIG PSR-0 的规范。
而在 tests 目录下,每个类别档的单元测试程式一样也是要遵守 PSR-0 规范。
在开发的过程中,各位可以选择使用 TDD 或其他惯用的开发流程。在确定功能无误后,我们就可以建立 package.xml,方便我们将套件安装到系统上测试;这个步骤可以透过以下指令来执行:
$ onion build
建立好 package.xml 后,就透过以下指令来进行安装测试:
$ pear config-set auto_discover 1
$ pear install -f package.xml
另外因为我们有加入 urifetcher 这个 shell script ,所以可以利用以下指令来查看它是否有被正常安装:
$ which urifetcher
在系统安装测试无误后,就可以按照“利用 GitHub 建立自己的 PEAR 频道”一文中所介绍的方式,来将套件打包并上传到我们自订的频道。
2. Web Application
Web Application 的开发方式其实与 Library 很像,差别在于它需要布署在 Web Server 上面来向浏览者提供服务,而非透过程式的呼叫。
通常它的目录结构会如下所示:
alt
▲ 4:onion - webapp tree layout
当然大家也可以采用目前一些常见 Web Framework 所定义好的目录结构,基本概念都是差不多的。
第一步我们当然是先初始化我们的 package.ini ,这里假设专案路径为 /path/to/webapp:
$ cd /path/to/webapp
$ onion init .
然后修改 package.ini 的内容:
[require]
pear.twig-project.org/Twig =
这里假设会在这个专案里面会用到 Twig 这个样版套件。
各位应该会发现笔者在这里只用到 require 这个区段,这是因为我们不需要打包 Web Application ,所以不需要把 package.ini 转译为 package.xml ;换句话说,在 Web Application 中,我们只需要透用 Onion 来管理相依套件。
接下来不论在在开发、测试或正式上线等环境,我们都可以用以下的方式来安装相依套件:
$ onion install
而在程式里面,我们必须在进入点 (通常是 index.php ) 的最上方,加入这段 PHP 码:
<?php
// 加入此段程式码
set_include_path(implode(PATH_SEPARATOR, array(
__DIR__ . '/vendor/pear',
get_include_path(),
)));
// 自动载入的程式码
// ...
这样程式才能够先取用 vendor/pear 中的相依套件。
大致上笔者常用的功能就是这些,其他更进阶的功能,各位可以在 Onion 的官网与作者讨论。
心得
PHP 在第四版时,套件管理这个概念才正式进入 PHP ;而在实作上, PEAR 套件的开发方式也比其他语言的机制繁琐。
但即便如此,透过了 Onion 这个方便的工具,不但让我们能够轻松地管理专案的相依套件,也能够让我们能以简单的方式来设定自行开发的套件。
或许 PEAR 这个架构现在看起来是老旧了些,但还是有其他高手正努力为 PHP 开发更良好的套件管理机制。相信有一天,我们能够以更方便更快速的方式,来打造属于我们自己的 PHP 套件。
更多问题到问题求助专区 (http://bbs.hounwang.com/)