在 linux 命令行中使用和执行 php 代码(一)-mile米乐体育
php是一个开源服务器端脚本语言,最初这三个字母代表的是“personal home page”,而现在则代表的是“php:hypertext preprocessor”,它是个递归首字母缩写。它是一个跨平台脚本语言,深受c、c 和java的影响。
在 linux 命令行中运行 php 代码
php的语法和c、java以及带有一些php特性的perl变成语言中的语法十分相似,它当下大约正被2.6亿个网站所使用,当前最新的稳定版本是php版本5.6.10。
php是html的嵌入脚本,它便于开发人员快速写出动态生成的页面。php主要用于服务器端(而javascript则用于客户端)以通过http生成动态网页,然而,当你知道可以在linux终端中不需要网页浏览器来执行php时,你或许会大为惊讶。
本文将阐述php脚本语言的命令行方面。
1. 在安装完php和apache2后,我们需要安装php命令行解释器。
# apt-get install php5-cli [debian 及类似系统] # yum install php-cli [centos 及类似系统]
接下来我们通常要做的是,在/var/www/html(这是 apache2 在大多数发行版中的工作目录)这个位置创建一个内容为 ,名为 infophp.php 的文件来测试(php是否安装正确),执行以下命令即可。
# echo '' > /var/www/html/infophp.php
然后,将浏览器访问 http://127.0.0.1/infophp.php ,这将会在网络浏览器中打开该文件。
检查php信息
不需要任何浏览器,在linux终端中也可以获得相同的结果。在linux命令行中执行/var/www/html/infophp.php,如:
# php -f /var/www/html/infophp.php
从命令行检查php信息
由于输出结果太大,我们可以通过管道将上述输出结果输送给 less 命令,这样就可以一次输出一屏了,命令如下:
# php -f /var/www/html/infophp.php | less
检查所有php信息
这里,‘-f‘选项解析并执行命令后跟随的文件。
2. 我们可以直接在linux命令行使用phpinfo()这个十分有价值的调试工具而不需要从文件来调用,只需执行以下命令:
# php -r 'phpinfo();'
php调试工具
这里,‘-r‘ 选项会让php代码在linux终端中不带<和>标记直接执行。
3. 以交互模式运行php并做一些数学运算。这里,‘-a‘ 选项用于以交互模式运行php。
# php -a interactive shell php > echo 2 3; 5 php > echo 9-6; 3 php > echo 5*4; 20 php > echo 12/3; 4 php > echo 12/5; 2.4 php > echo 2 3-1; 4 php > echo 2 3-1*3; 2 php > exit
输入 ‘exit‘ 或者按下 ‘ctrl c‘ 来关闭php交互模式。
启用php交互模式
4. 你可以仅仅将php脚本作为shell脚本来运行。首先,创建在你当前工作目录中创建一个php样例脚本。
# echo -e '#!/usr/bin/php/n' > phpscript.php
注意,我们在该php脚本的第一行使用#!/usr/bin/php,就像在shell脚本中那样(/bin/bash)。第一行的#!/usr/bin/php告诉linux命令行用 php 解释器来解析该脚本文件。
其次,让该脚本可执行:
# chmod 755 phpscript.php
接着来运行它,
# ./phpscript.php
5. 你可以完全靠自己通过交互shell来创建简单函数,这你一定会被惊到了。下面是循序渐进的指南。
开启php交互模式。
# php -a
创建一个函数,将它命名为 addition。同时,声明两个变量 $a 和 $b。
php > function addition ($a, $b)
使用花括号来在其间为该函数定义规则。
php > {
定义规则。这里,该规则讲的是添加这两个变量。
php { echo $a $b;
所有规则定义完毕,通过闭合花括号来封装规则。
php {}
测试函数,添加数字4和3,命令如下:
php > var_dump (addition(4,3));
样例输出
7null
你可以运行以下代码来执行该函数,你可以测试不同的值,你想来多少次都行。将里头的 a 和 b 替换成你自己的值。
php > var_dump (addition(a,b));
php > var_dump (addition(9,3.3));
样例输出
12.3null
创建php函数
你可以一直运行该函数,直至退出交互模式(ctrl z)。同时,你也应该注意到了,上面输出结果中返回的数据类型为 null。这个问题可以通过要求 php 交互 shell用 return 代替 echo 返回结果来修复。
只需要在上面的函数的中 ‘echo‘ 声明用 ‘return‘ 来替换
替换
php { echo $a $b;
为
php { return $a $b;
剩下的东西和原理仍然一样。
这里是一个样例,在该样例的输出结果中返回了正确的数据类型。
php函数
永远都记住,用户定义的函数不会从一个shell会话保留到下一个shell会话,因此,一旦你退出交互shell,它就会丢失了。
希望你喜欢此次教程。保持连线,你会获得更多此类文章。保持关注,保持健康。请在下面的评论中为我们提供有价值的反馈。点赞并分享,帮助我们扩散。