我是专业的 PHP开发人员。
我正在使用在 Windows 10家庭单一语言64位操作系统上运行的联想Ideapad笔记本电脑
我还在“C:\ xampp”位置安装了 XAMPP控制面板v3.2.2 ,以便在<中执行 PHP程序我的机器上的强>网络浏览器。
“php.exe”文件位于“C:\ xampp \ php”位置。
保存PHP文件的文档根目录位于“C:\ xampp \ htdocs”的位置。
我可以通过启动 XAMPP 软件运行我创建并保存在 C:\ xampp \ htdocs \ html_playground 目录中的PHP程序(通过double点击桌面上的XAMPP快捷方式,然后在浏览器的地址栏中输入类似“http://localhost/html_playground/sample.php”的程序文件的URL。
这样我就可以很好地运行PHP程序,但我想从 Windows命令提示符
运行相同的程序为此,我完成了以下步骤:
最后一个新字符串如下所示:
%USERPROFILE%\应用程序数据\本地\微软\ WindowsApps; C:\ XAMPP \ PHP
然后,不是显示程序的输出,而是在 Sublime Text (我用来编写代码的编辑器)中打开相同的文件。
sample.php 文件包含以下 PHP可执行代码:
<?php
echo 'Hello World!';
?>
供您参考我还附上了命令提示符窗口的屏幕截图:
现在我的问题是
请有人通过回答我的疑问并帮助我从命令提示符运行程序来帮助我。
即使我尝试重新启动PC并运行 php -v 命令,但它也没有用完。以下是相同的屏幕截图:
答案 0 :(得分:12)
如果您想运行CLI PHP,我强烈建议您安装windows.php.net上的vanilla PHP。让它安装到C:\php
我建议这样做的原因是,如果你想使用Composer(并且你真的很有可能想要),它会原生地在那里找到它。
现在您可以打开命令提示符并运行如下脚本
C:\php\php.exe C:\path\to\php\script.php
根据您的具体情况
Why I'm not able to see the output at command prompt or a web browser?
因为输出被发送到命令行。浏览器请求通过Web服务器发送到浏览器Is it necessary to start the XAMPP server like I normally do to run the program from command prompt too?
对于CLI请求,不。 PHP是一个可执行文件,可以自行运行。如果你想做浏览器请求,那么XAMPP需要运行。Is there really a need to set environment variables? If yes why? If no why?
不是真的。 CLI只关注php.ini
XAMPP配置主要用于Apache。But I'm not understanding the reason why people do insist for running the PHP programs from Command Line
主要原因是自动化任务。我在cron工作上运行的工作有几个。 答案 1 :(得分:10)
Windows 10中可变路径的分步指南
<强>更新强>
通过左键单击 Windows开始按钮跳至第4步,然后立即键入system env
,Windows搜索将建议Edit the system environment variables
,点击此处然后转到第4步。
答案 2 :(得分:3)
第1步:右键单击桌面上的“计算机”图标,然后选择“属性”选项。
第2步:在“系统”窗口中,单击左窗格中的“高级系统设置”
步骤3:在“系统属性”窗口中,从顶部的水平菜单中选择“高级”选项卡,然后单击窗口底部给出的“环境变量”按钮
步骤4:在下一个窗口中调用Environment Variables,转到System变量(第二个网格)并找到名为Path的变量,然后单击Edit。如果Path变量不存在,则单击“新建”。
如果您正在编辑,则在添加到单独变量的路径之前附加分号。
第5步:获取已安装XAMPP的php路径。在出现的小对话框中将此路径添加到变量值。
第6步:按“确定”并关闭所有窗口。
第7步:使用cmd打开命令提示符。
第8步: cd到your_install_path / xampp / htdocs
第9步:输入命令&#39; php -i |更&#39;
第10步:没有第10步。
答案 3 :(得分:2)
您可以使用php
标记在浏览中看到-S
代码输出:
php -S <host/ip>:<port>
要测试它,请创建一个包含以下内容的sample.php
文件:
<?php
echo "Hello World from built-in PHP server";
?>
并从命令行运行命令php -S localhost:8080
(不包括http:// )。
这将使用您作为文档根目录的当前目录启动侦听端口8080的Web服务器。
打开浏览器并导航至http://localhost:8080。你应该看到你的'Hello World'页面。
注意:我的假设是你在sample.php
所在的目录中。如果port:8080
已在使用中,您可以使用80
,8000
之类的任何其他端口。
答案 4 :(得分:1)
在与php.exe相同的目录中打开命令提示符,并使用您要处理的文件的参数调用该程序。
C:\xampp\php\php.exe C:\xamp\htdocs\html_playground\test.php
如果包含test.php;
<?php echo "Hello World"; ?>
然后命令提示符将输出“Hello World&#39;并返回标准CMD CLI用户输入。
>php
调用不起作用的原因很可能是由于您的PATH环境变量不包含PHP的正确位置,编辑系统变量并添加C:\ xampp \ php \ ;&#39;进入PATH字符串。这应该允许您为php C:\xamp\htdocs\html_playground\test.php
调用与上面相同的输出。
答案 5 :(得分:1)
由于您已安装XAMPP
,因此您可以从 XAMPP控制面板v3.2.2的 SHELL 窗口运行PHP
在我的测试用例中,我在目录index.php
中使用了一个小文件c:\xampp\htdocs\tester
,index.php
的内容是:
echo "This is output from command line "."\n";
if(!empty($argv)) {
foreach($argv as $key => $arg) {
if($key>0) {
echo "command line argument ".$key ." ". $arg."\n";
}
}
}
只需在命令行窗口中键入以下内容即可。
php C:\xampp\htdocs\tester\index.php var1=1 var2="lorem ipsum..."
输出
答案 6 :(得分:-2)
简单,简短,完美的答案。尝试至少一次你会获得成功:)
打开C:\ xampp \ php(或者您的路径可能因安装位置而异)
现在运行PHP.exe
现在就跟着这个 输入
php -a
然后开始编写代码
例如
<?php
echo "Hello, world!";
?>
然后按CTRL + Z然后按Enter
你好,世界! //输出