По профессии я разработчик PHP .
Я использую ноутбук Lenovo Ideapad, который работает в Windows 10 Home Single Language 64-разрядная операционная система
Я также установил XAMPP Control Panel v3.2.2 в папку «C: \ xampp» для выполнения программ PHP в веб-браузере на моей машине.
Файл «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
Для этого я сделал следующие шаги:
Последняя новая строка выглядела следующим образом:
% USERPROFILE% \ AppData \ Local \ Microsoft \ WindowsApps; C: \ XAMPP \ PHP
Затем вместо отображения вывода программы он открыл тот же файл в Sublime Text (редактор, который я использую для написания кода)
Файл sample.php имеет следующий исполняемый код PHP :
<?php echo 'Hello World!'; ?>
Для вашей справки я также прикрепляю экранный снимок окна командной строки:
Теперь мой вопрос:
Пожалуйста, помогите мне, отвечая на мои вопросы и помогая мне запустить программу из командной строки.
Даже я попытался перезагрузить ПК и запустить команду php -v, но это также не сработало. Ниже показан снимок экрана:
Если вы хотите запустить CLI PHP, я бы настоятельно предложил установить php vanilla, найденный на windows.php.net . Пусть он устанавливается на 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?
Потому что вывод отправляется в командную строку. Запросы браузера отправляются через веб-сервер в браузер 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. Щелкните правой кнопкой мыши значок «Компьютер» на рабочем столе и выберите «Свойства».
Шаг 2. В окне «Система» нажмите «Дополнительные системные настройки» на левой панели.
Шаг 3: В окне «Свойства системы» выберите «Дополнительно» в горизонтальном меню вверху и нажмите кнопку «Переменные среды», указанную в нижней части окна.
Шаг 4: В следующем окне вызовите переменные среды, перейдите в Системную переменную (вторая сетка) и найдите переменную Path и нажмите Edit. Если переменная Path отсутствует, нажмите «Создать».
Если вы редактируете, добавьте точку с запятой до пути, который вы добавляете к отдельным переменным.
Шаг 5: Получите путь php, где вы установили XAMPP. Добавьте этот путь к значению переменной в появившемся маленьком диалоговом окне.
Шаг 6: Нажмите ОК и закройте все окна.
Шаг 7. Откройте командную строку с помощью cmd.
Шаг 8: cd to your_install_path / xampp / htdocs
Шаг 9: введите команду «php -i | Больше'
Шаг 10: Нет шага 10.
Откройте командную строку в том же каталоге, что и php.exe, и вызовите программу с аргументом файла, который вы хотите обработать.
C:\xampp\php\php.exe C:\xamp\htdocs\html_playground\test.php
Если test.php содержится; <?php echo "Hello World"; ?>
<?php echo "Hello World"; ?>
тогда командная строка выводит «Hello World» и возвращает стандартный пользовательский ввод CMD CLI.
Причина, по которой ваш вызов >php
не работает, более чем вероятно из-за переменной среды PATH, не содержащей правильного расположения для PHP, отредактируйте системные переменные и добавьте 'C: \ xampp \ php \;' в строку PATH. Затем это должно позволить вам вызвать php C:\xamp\htdocs\html_playground\test.php
для того же выхода, что и выше.
Поскольку вы установили XAMPP
тогда вы можете запустить PHP
из окна SHELL панели управления XAMPP v3.2.2
В моем тестовом случае я использую небольшой файл 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..."
Вывод
Вы можете увидеть вывод php
кода в вашем браузере с помощью флага -S
:
php -S <host/ip>:<port>
Чтобы протестировать его, создайте файл sample.php
содержащий:
<?php echo "Hello World from built-in PHP server";
и запустите команду php -S localhost:8080
из командной строки ( не включайте http: // ).
Это запустит веб-сервер, прослушивающий порт 8080, используя текущий каталог, в котором вы находитесь в качестве корня документа.
Откройте браузер и перейдите по адресу http: // localhost: 8080 . Вы должны увидеть страницу «Hello World».
Примечание. Мое предположение заключается в том, что вы находитесь в каталоге, где присутствует sample.php
.
Простой, короткий и идеальный ответ для вас. Попробуйте хотя бы один раз, когда вы получите успех 🙂
Открыть C: \ xampp \ php (или ваш путь может отличаться в зависимости от того, где вы его установили)
Теперь запустите PHP.exe
теперь просто следуйте этому типу
php -a
и затем начните писать свой код.
например
<?php echo "Hello, world!"; ?>
Затем нажмите CTRL + Z, а затем Enter
Привет мир! // Вывод