PHP + BAT 制作PHP自解析批处理

发表于:2007-06-09来源:作者:点击数: 标签:
@REM?php @REM ==' @SET PHP CLI=F:\usr\local\php4\php.exe @REM PHPCLI表示你的CLI模式的php.exe的路径 @%PHPCLI% %0 @goto :EOF @REM';? ?php echo \rHello World; exec(pause); ? HonestQiao http://bbs.chinaunix.net/forum/viewtopic.php?t=527114start
@REM<?php
@REM =='
@SET PHPCLI=F:\usr\local\php4\php.exe
@REM PHPCLI表示你的CLI模式的php.exe的路径
@%PHPCLI% %0
@goto :EOF
@REM';?>
<?php
echo "\rHello World";
exec("pause");
?>

HonestQiao  http://bbs.chinaunix.net/forum/viewtopic.php?t=527114&start=0&sid=38clearcase/" target="_blank" >cccd4a2fda3de4a0cdacf6beda2111

PHP + BAT 制作PHP自解析批处理

关于标题:PHP + BAT 制作PHP自解析批处理

就是,一个BAT文件,内部包含了DOS的BAT批处理代码和PHP的CLI的代码。
因为后缀名为BAT,所以在WIndows系统上面,我点他,他就可以自动运行

因为我做了一些对PHP的特殊处理,因而它又能自己使用PHP的CLI来解析自己所包含的PHP指令。

有何用途:
例如你要做一个PHP-CLI的发行包,那么你可以参照这个脚本来做你自己的安装程序。


代码原文:
filename: phpbat.bat

代码:

@REM<?php
@REM =='
@SET PHPCLI=F:\usr\local\php4\php.exe
@REM PHPCLI表示你的CLI模式的php.exe的路径
@%PHPCLI% %0
@goto :EOF
@REM';?>
<?php
echo "\rHello World";
exec("pause");
?>



一点说明,巧妙的运用了BAT批处理的REM指令和PHP的''定义字符串的方式,使得二者混合一体,而又互补干扰。

参考:ActivePerl的WIndows Zip Packge的Installer.batM指令和PHP的''定义字符串的方式,使得二者混合一体,而又互补干扰。

下面有人说:

关键就是:
@REM <?php
以及
@%PHPCLI% %0
@goto :EOF

下面有人说:

偶这里似乎要加上ob_flush才好一些

代码:

@REM<?php
@REM =='
@SET PHPCLI=F:\php\php.exe
@REM PHPCLI表示你的CLI模式的php.exe的路径
@%PHPCLI% %0
@goto :EOF
@REM';?>
<?php
echo "\rHello World";
ob_flush();
exec("pause");
?>

原文转自:http://www.ltesting.net