注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

@fc_lamp

关注Web应用解决方案MySql/PHP/Python一盏名为"飞川"的灯~

 
 
 

日志

 
 

如何在WIN上部署PHING(什么是PHING)  

2010-07-15 11:44:00|  分类: Web技术-Servers |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
如何在WIN上部署PHING(什么是PHING)
一首先什么是PHING
引用官的一段话说:“PHing Is Not GNU make; it's a PHP project build system or build tool based on  Apache Ant. You can do anything with it that you could do with a traditional build system like GNU make, and its use of simple XML build files and extensible PHP "task" classes make it an easy-to-use and highly flexible build framework.”

二如何部署phing
   说明:PHing的安装方式又分为 pear 包安装与非pear包安装,并且在不同操作系统(unix 或者windows)的安装方式不一样,在这里,我只是简单的说说在win上的非pear安装。更很信息详见官网:http://phing.info/trac/

WIND上的非pear安装:
1  首先上其官下载一个最新的 phing完整包(因为是非Pear包安装的)。
2 设置环境变量:我的电脑--->属性  里去找到 【高级选项卡】,然后找到 [环境变量] 选项如下图所示:
如何在WIN上部署PHING(什么是PHING) - fc-lamp - fc-lamp的博客


然后,依照官上所给定的设置值的方式进行设置。
set PHP_COMMAND=c:\opt\php\php.exe
set PHING_HOME=c:\opt\phing
set PHP_CLASSPATH=c:\opt\phing\classes
set PATH=%PATH%;%PHING_HOME%\bin三 简单测试(有关xml,以及相关命令,稍后将作解释)
做了以上操作后,我们就可以简单测试一下了:
首先新建一个test.xml文件(这个文件我放在 d:\test.xml,它的作用在于创建一个 buidl文件夹)。

<?xml version="1.0" encoding="UTF-8"?>
<project name="FooBar" default="dist">
<target name="dist">
<echo msg="Making directory ./build" />
<mkdir dir="./build" />
</target>
</project>

然后进入cmd,执行以下命令:
 phing -f d:\test.xml

稍后,你将会在 d盘根目录下看一个 build的文件夹

构建文件xml文档详细解

 构建文件xml有如下结构:
1 文档序言(document prolog)
2 根元素<project>
3 几个类型元素(<property>,<fileset>,<patternset>)
4 包含一个或几个内建的或用户自定义的任务元素(例如:<javac>,<tar>)

文件序言之后紧跟着的第一个元素的是<project>,此元素是一个包含其他元素的容器,并且有以下属性:

<project>的属性:
name        项目的名称
basedir         项目的根目录,如果未指定将使用当前目录           
default         在调用构建文件的时候,如果没有指定要执行的目标,将执行在此定义的项目默认目标(即tartget的name值)                          
description    项目的描述

target 元素
一个目标可依赖其他的目标.你可能有一个在构建树中安装文件的目标,例如,创建一个tar.tgz分发包的目标.
Target元素的属性:
属性                                 含义                                                                                  要求
name                          目标的名称                                                                            Yes
depends              此目标依赖的逗号分隔列表                                                       No
if                       为了使此目标得以执行而必须设置的属性的名称                       No
unless             为了使此目标得以执行而禁止设置的属性的名称


property 元素
属性是在构建文件使用的基本的变量,可以在构建文件中通过 PropertyTask任务设置或在Phing外部通过命令行传递.
通过命令行传递的属性总是会覆盖在构建文件中设置的属性,也就是说命令行是最后传递给Phing的,自然会覆盖先前在构建文件中设置的属性.
属性有一个名称和一个唯一的值.属性可以作为任务属性的值.这是通过在”${”和”}”包含属性名称来设置的.例如:
<property name="sourcedir" value="/src/data/"/>
<echo msg="${sourcedir}"/>
这里在运行时${sourcedir}将被展开为/src/java
或者在命名行中:
phing –Dsourcedir=”/backup/data/” –f mybuild.xml
内建属性
Phing给你提供了访问系统属性的能力,好像它已经通过<property>定义过的一样.例如,${php.version}展开为php的版本.
http://phing.info/docs/guide/2.2.0/chapters/appendixes/AppendixA- 有完整的内建属性的列表

PHING的相关命令解
在CMD中键入phing –h可以查看命令参数的描述
-f :执行一个构建xml文件
-D:指定参数设置。
很多命令可上官网查看。

好了,最后我们再来做一个简单测试:使用参数来创建一个文件夹.
xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="FooBar" default="dist">
<target name="dist">
<echo msg="Making directory ./build" />
<mkdir dir="${oop}" />
</target>
</project>

在CMD中键入如下命令:
 phing -Doop=33 -f d:\test.xml

之后,你将在D盘根目下看到一个33的文件夹

另:PHP CLI常用命令

CLI命令选项

PHP CLI使用非常容易,同样,也非常稳定,它在命令行下提供很多灵活的选项。最简单的方法就是在命令行下输入(前提:需要设置PATH路径指向php-win.exe的位置),如下例:
php d:\cli\run.php

下面是关于CLI命令的语法格式:
?

php [options] [-f] <file> [--] [args...]
? php [options] -r <code> [--] [args...]
? php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...]
? php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...]
? php [options] [--] [args...]
? php [options] -a

有关[option]选项可以使用下面的参数。

-a     交互式运行CLI程序
-c <path>|<file>  查找php.ini的路径
-n     不使用php.ini文件
-d action[=input] 定义INI的入口action的值为'input'
-e     对调试器(debugger)/解析器(profiler)生成扩展信息
-f <file>   解析文件 <file>
-h     显示帮助信息
-i     PHP 信息
-l     只进行语法检查,不执行
-m     显示在模块编译
-r <code>   运行 PHP <code> 用脚本标识 <?..?>
-B <begin_code>  运行PHP <begin_code> 在输入一行前
-R <code>   运行 PHP <code> 对输入的每一行
-F <file>   解析和执行 <file> 对输入的每一行
-E <end_code>  运行PHP <end_code> 在所有行输入后操作
-H     对外部工具隐含每个传递的参数
-s     对源代码语法显示高亮
-v     显示版本号
-w     源代码显示,不显示备注与空白字符
-z <file>   从 <file>调入Zend扩展

PHP CLI参数(args)通过标准输入(stdin)传递参数。

在Windows系统下,我们可以在命令行下显示PHP CLI的版本。

C:\php>php -v
PHP 5.2.1 (cli) (built: Feb  7 2007 23:11:26)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
with Zend Extension Manager v1.0.11, Copyright (c)
2003-2006, by Zend Technologies
with Zend Optimizer v3.2.0, Copyright (c)
1998-2006, by Zend Technologies

在FreeBSD下的样式如下:

www# php -v
PHP 5.2.1 with Suhosin-Patch 0.9.3 (cli) (built: Jan  2 2007 00:12:32)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
with eAccelerator v0.9.5-rc1, Copyright (c) 2004-2006
eAccelerator, by eAccelerator
with Zend Extension Manager v1.0.11, Copyright (c)
2003-2006, by Zend Technologies
with Zend Optimizer v3.2.0, Copyright (c) 1998-2006,
by Zend Technologies

因为笔者的PHP 5中安装了eAccelerator缓存加速器,可能会与读者的系统显示稍有不同。
在命令行输出:php -a,它将允许我们与命令行进行交互,如图20-2所示。

如何在WIN上部署PHING(什么是PHING) - fc-lamp - fc-lamp的博客 

图20-2

在输入语句时,如果遇到打印输出语句,PHP会随着输出的命令马上打印出来,这样在调试程序时又多了一个即时性。如果想退出该状态,按“Ctrl+C”组合键即可。


  评论这张
 
阅读(369)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017