2006世界杯巴西

PHP虽然不要编译,但是它真的写完就能运行吗?

PHP虽然不要编译,但是它真的写完就能运行吗?

1.PHP的一大特性是:脚本语言、不要编译 但是真的写完就可以运行?然而并不是。 PHP代码想要运行必须有个”母体”——就是我们编译好的那个”PHP可执行程序”。 在linux里这个母体可能是放在了/usr/local/php/bin/php

如何运行? 1./usr/local/php/bin/php 后面跟上某个PHP文件 2./usr/local/php/bin/php -r ‘这里直接写上PHP代码’ 3.创建一个文件,在第一行写上#!/usr/local/php/bin/php 这样就可以识别这个文件是要PHP来运行(文件名不必.php结尾) 举例:

$ vi god

#/usr/local/php/bin/php

echo 'hello world!'.PHP_EOL;

给权限$ chmod +x god 运行这个文件 $ ./god

为了在任何目录下都能执行这个god,我们需要把它拷贝到 /usr/local/bin目录下:sudo cp god /usr/local/bin(确保这个目录在你的环境变量里) 然后在任何目录执行 god,都会输出god文件里的字符串啦

============== 环境变量

查看:$ echo $PATH

怎么获取参数? 我们都知道怎么获取GET参数或POST参数,但现在木有网页,是命令行下执行php。 有2个全局变量

argc和

argv出现了,前者是参数个数,后者就是参数,它是一个数组

#/usr/local/php/bin/php

$str = 'zhangsan';

echo $str.PHP_EOL;

echo $argv[0]; //打印:/usr/local/bin/god

echo PHP_EOL;

如果是echo $argv[1],我们在执行god命令的时候之后就可以带参数:$ god abc

echo $argv[1];//就会打印:abc

实战演练 需求:当我们执行god的时候,如果没有参数打印”noting”,如果有参数是-v,则打印如下字符”god version is 1.0”

#/usr/local/php/bin/php

$result = 'noting';

if($argc >= 2){

if($argv[1] == '-v'){

$result = 'god version is 1.0';

}

}

echo $result.PHP_EOL;

然后执行 $ god -v 会打印:god version is 1.0

Copyright © 2088 世界杯预选赛南美_决赛世界杯 - scbfjc.com All Rights Reserved.
友情链接