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