如何在 Windows 计算机上从命令提示符运行 PHP 程序?

2023-12-01

I'm a PHP开发人员按职业。

我正在使用一个联想 Ideapad 笔记本电脑运行于Windows 10 家庭单语言 64 位操作系统

我也安装了XAMPP 控制面板 v3.2.2在地点“C:\xampp”执行PHP程序 in a 网页浏览器在我的机器上。

The “php.exe”文件存在于该位置“C:\xampp\php”.

保存PHP文件的文档根目录位于以下位置“C:\xampp\htdocs”.

我能够运行我创建并保存在目录中的 PHP 程序C:\xampp\htdocs\html_playground通过启动XAMPP软件(通过双击桌面上的 XAMPP 快捷方式)并输入如下所示的程序文件的 URL"http://localhost/html_playground/sample.php"在浏览器的地址栏中。

这样我就可以很好地运行 PHP 程序,但我想从Windows 命令提示符

为此,我做了以下步骤:

  • 去过 去过高级系统设置(控制面板\系统和安全\系统\高级系统设置)
  • 然后点击环境变量
  • 然后选择变量Path
  • 然后点击Edit... button
  • 然后在现有字符串的结束分号之后我添加了字符串“C:\xampp\php”通过添加一个空格处分号之后。

最终的新字符串如下所示:

%USERPROFILE%\AppData\Local\Microsoft\WindowsApps; C:\xampp\php

  • 然后点击Ok
  • Opened 命令提示符
  • 走到了小路C:\xampp\htdocs\html_playground在命令提示符下使用cd command
  • 输入示例.php(包含我的PHP程序的文件)

然后,它没有显示程序的输出,而是打开了相同的文件崇高的文字(我用来编写代码的编辑器)

The 示例.php文件有以下内容PHP可执行代码 :

<?php 
   echo 'Hello World!';
?>

为了供您参考,我还附上了命令提示符窗口的屏幕截图:

Command Prompt Window

现在我的问题是

  • 为什么我无法在命令提示符或网络浏览器中看到输出?
  • 我做错了什么还是什么?
  • 是否需要像我通常那样启动 XAMPP 服务器才能在 Web 浏览器中运行该程序,以便也从命令提示符执行该程序?
  • 是我设置环境变量有误吗?
  • 真的需要设置环境变量吗?如果是的话为什么?如果没有为什么?
  • 由于 PHP 被认为是适合 Web 开发的语言,因此我认为在 Web 开发人员的软件(即 Web 浏览器)中运行该程序总是好的。但我不明白为什么人们坚持运行 PHP 程序命令行而不是仅从网络浏览器运行相同的程序?

请有人通过回答我的疑问并帮助我从命令提示符运行程序来帮助我。

即使我尝试重新启动电脑并运行php -v命令但它也没有成功。以下是相同的屏幕截图:

Command Prompt output after system restart


如果您想运行 CLI PHP,我强烈建议您安装在windows.php.net。让它安装到C:\php我推荐这个的原因是如果你想使用Composer(你很有可能会想要),它会自然地在那里找到它。

现在您可以打开命令提示符并运行脚本,如下所示

C:\php\php.exe C:\path\to\php\script.php

根据您的具体情况

  1. Why I'm not able to see the output at command prompt or a web browser?因为输出被发送到命令行。浏览器请求通过 Web 服务器发送到浏览器
  2. Is it necessary to start the XAMPP server like I normally do to run the program from command prompt too?对于 CLI 请求,否。 PHP 是一个可执行文件,可以独立运行。如果您想要执行浏览器请求,则需要运行 XAMPP。
  3. Is there really a need to set environment variables? If yes why? If no why?并不真地。 CLI 只会关注php.iniXAMPP 配置主要适用于 Apache。
  4. But I'm not understanding the reason why people do insist for running the PHP programs from Command Line主要原因是自动化任务。我在工作中有几个进程在 cron 作业上运行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Windows 计算机上从命令提示符运行 PHP 程序? 的相关文章

随机推荐

  • 无法在头文件中声明 ifstream 类成员

    我试图在头文件中声明一个 ifstream 对象 如图所示 但收到一条错误消息 指出无法访问它 我尝试了各种方法 例如将其变成指针 在 c 文件中初始化等 但我的代码似乎无法获取它的声明的一部分 读取文件 h ifndef READFILE
  • 如何使用 open() 在 python 中使用相对路径打开文件? [复制]

    这个问题在这里已经有答案了 我试图不使用配置文件的绝对路径 因为我需要将其部署在多个环境中 这里我的最佳选择是什么 下面的代码是我尝试过的 它无法找到路径 但是我可以在同一位置找到该文件 我在 Redhat 服务器上使用 Python3 6
  • RDFa 面包屑导航和验证器的正确文档类型

    我需要弄清楚 HTML 文档类型 在此页面中 http kovo intl uk to我使用 RDFa 添加面包屑导航 但随后页面不再有效 我用谷歌搜索 发现将 doctype 更改为 现在页面 100 有效 但是 XHTML 和如此低的数
  • jquery数据表排序忽略空值

    我正在使用数据表和 jQuery 来制作漂亮的可排序表 我现在想要对行进行排序 该值是一个数值 但它也可能不可用 所以此时我将回显破折号 现在 当我对此列进行排序时 所有带有破折号的行都位于顶部 然后显示值为 1 3 6 8 10 的行 如
  • 获取 Point 两侧的 LineString 上的顶点

    我有一个匀称的LineString并定义了一个匀称的Point沿着LineString 我怎样才能找到顶点LineString哪个位于该点的两侧 将线分成两部分 找到线段LineString重点在哪里 然后将顶点分成两组LineString
  • 如何在mysql存储过程中生成5个随机数

    如何生成 5 个唯一的随机数 现在我有类似的东西 declare v counter integer declare v random integer declare v result varchar 10 select FLOOR 1 r
  • FixThreadPool 与 CachedThreadPool:两害相权取其轻

    我有一个程序可以生成线程 5 150 来执行一堆任务 最初 我使用了一个FixedThreadPool因为这个类似的问题建议它们更适合寿命较长的任务 并且由于我对多线程的了解非常有限 我考虑了线程的平均寿命 几分钟 长寿 但是 我最近添加了
  • 如何使用 Java 列出存储桶中的所有 AWS S3 对象

    使用 Java 获取 S3 存储桶中所有项目的列表的最简单方法是什么 List
  • 安装factoextra时rbind(info, getNamespaceInfo(env, "S3methods")) 出错

    我正在尝试在 Windows 上使用本地源 tar 球安装 factoextra 包 我可以用同样的方式安装其他软件包 没有问题 但是 在安装 factoextra 时 我收到与 S3methods 相关的错误 我尝试使用本地 Window
  • 如何使用 css 模糊图像,同时在图像上显示文本(悬停)

    可以 然后呢 我有个问题 我想要一张悬停时模糊的图片 同时让文字出现在它上面 我找到了一种简单的方法来模糊图像并显示文本 但不能同时显示两者 事实上 将两个代码合并在一起可以使图片看起来一点也不模糊 我认为这是因为文本实际上覆盖了图像 并且
  • WPF 中的网格表

    我需要创建一个网格 应该是可编辑的我应该设置行数和列数 例如 mygrid RowCount 3 mygrid ColumnCount 3 它应该是这样的 如何将二维数组绑定到DataGrid 您可以使用 WPF DataGrid 控件 它
  • 将 JSON 文件加载到 BigQuery 表时如何管理/处理架构更改

    我的输入文件如下所示 Id 1 Address Street MG Road City Pune Id 2 Address City Mumbai Id 3 Address Street XYZ Road Id 4 Id 5 PhoneNu
  • PostgreSQL - 不一致的复制权限错误

    我在 Windows 7 32 位计算机上使用 EnterpriseDB pgAdmin III v 1 12 1 来处理远程 Linux 服务器上的 PostgreSQL 数据库 我以用户 postgres 身份登录 这允许我访问 PGD
  • 在 JSF 模板内进行过滤是个好主意吗?

    我必须说的第一件事是 我从未在 Java Web 应用程序上使用 Web 过滤器 所以这可能是一个愚蠢的想法 我正在尝试创建一种方法 可以检查用户的权限 并在用户是否可以访问某些页面时授予其访问权限 为了更好的解释 我将举一个例子 您应该想
  • 我在尝试将 python 与 mysql 链接时遇到错误

    TypeError init takes 1 positional argument but 5 were given 这是错误 我将分享以下脚本 import pymysql print DATABASE CONNECTION SAMPL
  • 为什么 eclipse 不重新编译对我的 Java 类所做的最后更改?

    我有一个简单的文件 只有 1 行 在 main 中打印 Hello World 我执行它并在 eclipse 控制台上打印 Hello World 现在当我将字符串更改为 再见世界 它仍然打印 你好世界 事实上 如果我通过将 println
  • 带有签名的图像未按预期定位

    我正在开发一个 SwiftUI 项目 我想将签名图像叠加在另一个图像之上 并允许用户操纵签名图像的位置 比例和旋转 但是 我在签名图像的定位方面遇到了问题 并且它没有出现在我期望的位置 我尝试设置用于拖动 缩放和旋转签名图像的手势 但它的行
  • 如何使用ajax在javascript中调用java类方法?

    我有一个java类 package MyPackage import java sql Connection import java sql DriverManager import java sql ResultSet import ja
  • Woocommerce 获取购物车项目元

    我的产品页面上有一个 自定义字段 我想将其添加到 Woocommerce 购物车页面中的产品标题上方 这是自定义字段数据 我用这个 PHP 代码让它在单个产品卡上工作 add action woocommerce after shop lo
  • 如何在 Windows 计算机上从命令提示符运行 PHP 程序?

    I m a PHP开发人员按职业 我正在使用一个联想 Ideapad 笔记本电脑运行于Windows 10 家庭单语言 64 位操作系统 我也安装了XAMPP 控制面板 v3 2 2在地点 C xampp 执行PHP程序 in a 网页浏览