如果这个问题得到解答,我很抱歉。
为什么我不能直接运行php代码而不使用mac上的终端。我的意思是当你双击html文件时它会自动在浏览器中打开而不是在php的情况下。如果我尝试双击php它会打开一些文本编辑器。
任何帮助都会有所帮助。
答案 0 :(得分:14)
我认为你不明白PHP是什么......
HTML是一种标记语言,可以直接被浏览器理解。如果浏览器打开文件,它可以对内容执行某些操作。
由于PHP是一种编程语言,因此需要一个解析器。这个解析器是你的PHP可执行文件。这个程序可以理解PHP,除了运行代码并给出结果之外什么都不做。此结果可能是HTML网页,图像或其他任何内容。
既然你说过,你正在使用mac,这里有一个关于如何设置个人网络服务器的快速介绍:
在Mac OSX上,PHP和Apache(我在本例中使用的)已经安装并预先配置。你可以像这样开始使用它:
进入系统偏好设置并验证是否已启用Web Sharing
。
打开Finder并转到/Library/WebServer/Documents/localhost
。其中的所有文件都由本地Web服务器处理(Apache和PHP,如果您想知道的话)。将您的文件放在那里并打开您的网络服务器并致电http://localhost/YourFile.php
,它将调用文件YourFile.php
并显示脚本输出的内容。
修改强>
如果您使用PHP作为脚本,例如bash-scripts,请参阅@ andreas-baumgart提供的答案。
答案 1 :(得分:9)
要在MAC中运行PHP,应该启动内置的Apache Web服务器并启用已安装的PHP。
这可以通过以下步骤完成。
转到/etc/apache2/httpd.conf
并将权限更改为sudo chmod 777 httpd.conf
然后打开上面的文件以取消注释第#LoadModule php5_module libexec/apache2/libphp5.so
行
要启动apache内置服务器,请在终端中使用命令sudo apachectl start
。
现在可以使用php -f filename.php
从终端创建和运行.php文件,也可以使用http://localhost/filename.php
在浏览器上运行
答案 2 :(得分:5)
您不能执行纯PHP脚本,因为它们不是可执行程序而是源代码。因此,它们仅包含解释器的收据以创建可执行代码。为了运行PHP脚本,您需要将其传递给PHP解释器。在您的方案中,您可以通过提供shebang来存档。
要双击运行脚本,请尝试以下操作:
chmod +x yourscript.php
#!/usr/bin/env php
。答案 3 :(得分:2)
迟到的反应,但我正在考虑为自己做这件事,这是我的搜索结果中的一个想要提供2个解决方案,因为我最终选择了两个。
简单的方法是通过编写包装文件来执行您正在处理的脚本。使用以下代码创建文件:
#!/usr/bin/php
<?php
include('name-of-php-script.php');
?>
将其另存为 wrapper.command 名称包装器并不重要,但命令扩展名告诉Finder这是在终端中打开的shell脚本。文件本身只执行include脚本中的任何php脚本。
具体调查需要一些工作。
首先确保php脚本的第一行是:
#!/usr/bin/php
这是在Mac OS X上安装预装版本的PHP的地方。您可以随时在终端中运行此命令进行验证:
whereis php
一旦你将Shebang系列添加到php脚本中,你已经准备好自动执行了。
要使双击可执行,您必须执行以下操作: 右键单击PHP脚本,然后单击获取信息。单击打开方式的位置,单击默认选项以查看所有可用选项。选择其他...
从推荐应用到所有应用切换启用的位置,然后点击始终打开的复选框。选择终端作为应用程序。最后,您必须点击全部更改...
按钮OS X将验证您是否希望将其设置为打开.php文件的默认应用程序
默认情况下,这将使每个php文件在终端中打开,但除非它们包含#!/ usr / bin / php行,否则它们实际上不会运行。
答案 4 :(得分:2)
答案 5 :(得分:0)
因为.php文件本身不是“可执行的”,所以它们只是带有PHP扩展名的文本文件。
你需要针对文件运行php解释器来执行它的内容。
答案 6 :(得分:0)
尝试此操作(对于Mac),
打开terminal
cd
到文件夹
启动php服务器-php -S 127.0.0.1:8000
打开浏览器,然后输入-http://localhost:8000/file-name.php