如何从终端执行php块而不保存到文件

2022-08-30 14:41:38

假设我有一个代码块,我想像这样测试:

<?php 
 Print "Hello, World!";
?>

我如何从终端快速运行此代码而不将其保存到文件中?

我尝试了这样的事情...

php -r "Print "Hello, World!";"

但只是抱怨语法错误。必须有一个简单的方法来做到这一点。我只是还没有找到任何解释。


答案 1

要立即在终端上运行PHP命令,您可以将选项传递给已安装的PHP:-a

php -a

详细信息

enter image description here

php -a打开一个交互式shell,允许您直接键入PHP命令并在终端上查看结果,例如,在终端中键入后,您可以键入,然后按Enter键将打印在屏幕上。php -aecho 'Hello World';Hello World!

视窗解决方案

在Windows上没有与Linux相同的交互模式,但您仍然可以使用交互式模式!,因此,在安装它的地方打开PHP,例如,如果您使用XAMPP,那么您的PHP应该在上(或将二进制目录添加到环境变量中),然后键入,在每行的末尾,您可以通过按然后查看结果。C:\xampp\phpphp -aCtrl+ZEnter

php -a
echo 'hello world!';
^Z

答案 2

对用于分隔字符串的内部双引号 () 进行转义。"

php -r "Print \"Hello, World!\";"

或者,对 PHP 字符串或 PHP 代码使用单引号 ()。'

如果运行,您可以看到程序接受的命令列表。php --helpphp

  -a               Run as interactive shell
  -c <path>|<file> Look for php.ini file in this directory
  -n               No php.ini file will be used
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -f <file>        Parse and execute <file>.
  -h               This help
  -i               PHP information
  -l               Syntax check only (lint)
  -m               Show compiled in modules
  -r <code>        Run PHP <code> without using script tags <?..?>
  -B <begin_code>  Run PHP <begin_code> before processing input lines
  -R <code>        Run PHP <code> for every input line
  -F <file>        Parse and execute <file> for every input line
  -E <end_code>    Run PHP <end_code> after processing all input lines
  -H               Hide any passed arguments from external tools.
  -S <addr>:<port> Run with built-in web server.
  -t <docroot>     Specify document root <docroot> for built-in web server.
  -s               Output HTML syntax highlighted source.
  -v               Version number
  -w               Output source with stripped comments and whitespace.
  -z <file>        Load Zend extension <file>.

  args...          Arguments passed to script. Use -- args when first argument
                   starts with - or script is read from stdin

  --ini            Show configuration file names

  --rf <name>      Show information about function <name>.
  --rc <name>      Show information about class <name>.
  --re <name>      Show information about extension <name>.
  --rz <name>      Show information about Zend extension <name>.
  --ri <name>      Show configuration for extension <name>.

推荐