如何在 Linux 命令行中使用和执行 PHP 代码

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' > 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,它就会丢失了。


回复

使用道具 举报

返回列表

(0)

相关推荐

  • 如何在Linux命令行中刻录ISO或NRG镜像到DVD

    问题:我需要在Linux机器上使用DVD刻录机刻录一个镜像文件(.iso或.nrg)到DVD,有没有一个既快捷又简易的方法,最好是使用命令行工具? 最常见的两种镜像文件格式是ISO(.iso为文件扩展 ...

  • 如何在Linux 命令行下浏览天气预报

    Q: 我经常在 Linux 桌面查看天气预报.然而,是否有一种在终端环境下,不通过桌面小插件或者浏览器查询天气预报的方法? 其中有一个就是wego,一个终端下的小巧程序.使用基于ncurses 的接口 ...

  • 如何在Linux命令行模式安装VMware Tools

    本例中为在Linux(以CentOS 7为例)安装VMware Tools. 在Linux命令行模式安装VMware Tools 01 首先启动CentOS 7,在VMware中点击上方"V ...

  • Linux命令行之逗趣的图文

    你有没有在Linux命令行中见过一辆火车呢?"猫跟老鼠"呢?编辑Linux命令行其实并不总是件严肃古板的事情。你完全可以用它自娱自乐。下面我们就跟大家一起讨论一下Linux命令行的特质。 假设:本文所 ...

  • Linux系统下中 在命令行中实现Wifi 连接的方法

    无论何时要安装一款新的 Linux 发行系统,一般的建议都是让您通过有线连接来接到互联网的。 这主要的原因有两条:第一,您的无线网卡也许安装的驱动不正确而不能用;第二,如果您是从命令行中来安装系统的, ...

  • 在Linux的命令行中实现字符出现频率统计的方法

    Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行很多繁琐的任务.比如,我们计算一个文本文件中字和字符的出现频率,这就是我们打算在这篇文章中讲到的. 立刻来到我们脑海的命令,计算字和字符在一 ...

  • 如何使用Linux命令行检测DVD刻录机的名字和读写速度

    提问:我想要知道我的DVD刻录机的名字和在烧录时的速度。该使用什么Linux命令行工具来连测DVD刻录机的设备名和速度? 如今大多数消费PC和笔记本电脑都配备了DVD刻录机。在Linux中,光盘驱动器 ...

  • 怎么从Linux命令行刻录镜像文件到DVD光盘中

    当我们在操作Linux系统的时候,需要将镜像文件刻录到DVD中,那么要怎么做呢?下面小编给大家介绍下怎么从Linux命令行刻录镜像文件到DVD中,一起来学习下吧。 最常见的两种镜像文件格式是ISO(. ...

  • 切换ubuntu下图形模式与linux命令行模式

    本文讲述了linux下图形模式与linux命令行模式切换要领。下面将对此执行 细致说明: ctrl+alt+f2 命令行模式 ctrl+alt+f7 图形模式 我安装的是ubuntu版本,其他版本是不 ...