2013-11-13 2 views
0

Прошу прощения, если на этот вопрос был дан ответ.Дважды щелкните и запустите скрипт Php на mac

Почему я не могу запустить PHP-код напрямую, не используя терминал на mac.Что я имею в виду, когда вы дважды щелкаете по html-файлу, он автоматически открывается в браузере, но не в случае php.If я пытаюсь дважды щелкнуть по php открывается некоторым текстовым редактором.

Любая помощь была бы полезна.

+1

PHP требует PHP-интерпретатор, который, как правило, воевавших только на веб-сервере. Взгляните на XAMPP, вы можете разместить локальный веб-сервер и выполнить свои php-скрипты на своем локальном компьютере. –

+0

Но mac поставляется с установленным php. Я могу запустить php-файл, но мне нужно вручную ввести имя файла [имя пути]. – TryingToLearn

+1

Сначала вы должны взять курс компьютера, узнать, что является исполняемым, а что нет, и узнать о приложении по умолчанию для файлов, а затем, наконец, узнать о PHP-коде, как он выполняется и что читает/выполняет код (определенно не браузер). – Houssni

ответ

0

Поскольку .php-файлы не являются «исполняемыми» как таковыми, они просто текстовые файлы с расширением PHP.

Вам необходимо запустить php-интерпретатор в отношении файла для выполнения на его содержимом.

11

Я думаю, что вы не понимаете, что 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 и покажет вам, что является результатом скрипта.

EDIT:

Если вы используете PHP для скриптов, как Баш-скрипты, смотрите ответ @ Андреас-Баумгарт при условии.

+0

Чувак Я знаю, что Php - это серверная, но я был новичком в mac so.By, так как удаление веб-сайтов просто нужно включить, используя sudo apachectl start – TryingToLearn

+2

@rak, но вы написали свой вопрос как кто-то, не зная, что такое веб-сервер это ... или что вам нужно, чтобы открыть свой веб-сайт в браузере. – SimonSimCity

+0

Я использовал mac в первый раз, поэтому я подумал, что он должен работать, когда мы дважды щелкаем его по мере того, как сервер был включен. – TryingToLearn

3

Вы не можете выполнять простые PHP-скрипты, поскольку они не являются исполняемыми программами, а исходным кодом. Таким образом, они содержат только квитанцию ​​для переводчика для создания исполняемого кода. Для запуска PHP-скрипта вам необходимо передать его интерпретатору PHP. В своем сценарии вы можете архивировать это, предоставив shebang.

Чтобы запустить скрипт на двойной щелчок, попробуйте следующее:

  1. сделать скрипт исполняемым с помощью chmod +x yourscript.php
  2. Предварение в соответствии хижину к содержанию файлов: #!/usr/bin/env php.
  3. Выберите файл PHP в Finder, нажмите CMD-i и измените «Открыть с» на «Terminal.app».
+1

Определенно не компилятор, потому что это язык сценария, интерпретатор верен. – Houssni

+0

Вы правы, конечно. Однако в очень ничтожном смысле. Соответственно изменился текст. –

+0

Да, извините за это, я просто так;), +1 кстати, вы дали хороший ответ. – Houssni

6

Для запуска PHP в MAC необходимо запустить встроенный веб-сервер Apache, а также включить установленный PHP.

Это можно сделать с помощью следующих шагов.

  1. Перейти к /etc/apache2/httpd.conf и изменить разрешение на sudo chmod 777 httpd.conf

  2. Затем откройте вышеуказанный файл раскомментировать строку #LoadModule php5_module libexec/apache2/libphp5.so

  3. Чтобы запустить апач встроенный сервер, используйте команду sudo apachectl start в терминал.

Теперь .php файлы могут быть созданы и запустить из терминала, используя php -f filename.php и он также может быть запущен в браузере с помощью http://localhost/filename.php

2

Позднего ответ, но искали в этом для себя, это приходит поскольку один из результатов моего поиска хотел предоставить 2 решения, так как я в конечном итоге пришел к себе.

Решение # 1

Простой способ это пойти кругом, как в письменном виде файла оболочку для выполнения сценария вы работаете. Создайте файл со следующим кодом:

#!/usr/bin/php 
<?php 

include('name-of-php-script.php'); 

?> 

Сохранить это как wrapper.command Название обертки не важно, но расширение команды говорит Finder, что это скрипт, чтобы открыть в терминале. Сам файл просто выполняет любой скрипт php в include.

Решение # 2

Конкретный запрос требует немного работы.

Сначала убедитесь, что первая строка сценария РНР:

#!/usr/bin/php 

Здесь установлена ​​предустановленный версия PHP на Mac OS X. Вы всегда можете проверить, выполнив следующую команду в терминале:

whereis php 

После того, как вы добавили строку Shebang к скрипту php, вы его подготовили для автоматического выполнения.

Чтобы сделать его double clickable executeable, вам необходимо сделать следующее: Щелкните правой кнопкой мыши скрипт PHP и нажмите Получить информацию. Нажмите, где написано: Открыть С, щелкните по умолчанию, чтобы увидеть все доступные параметры. Выберите Другое ...

коммутатора, где он говорит Enable: из Рекомендуемые приложения к Все приложения и установите флажок для всегда открыт с. Выберите «Терминал» в качестве приложения. Наконец, вы должны нажать кнопку, которая говорит Изменить все ...

OS X будет подтвердить, что вы хотите, чтобы установить терминал в качестве приложения по умолчанию для открытия файлов .php

Это сделает каждый файл PHP открыть в терминале по умолчанию, но если они не содержат #!/USR/bin/php, они фактически не будут выполняться.

1

Попробуйте MAMP

MAMP 4 приносит еще больше возможностей для веб-разработчиков. Теперь мы поддерживаем MySQL 5.6, а Nginx теперь полностью интегрирован. Улучшено время запуска сервера.

enter image description here

Смежные вопросы