- Завантажуємо PHP для Windows
- Встановлюємо PHP 7.1
- Підключаємо конфігураційний файл
- Тестуємо PHP з командного рядка
- Спрощуємо звернення до php.exe
- Ще трохи про змінних оточення
У htmlAcademy стартував перший базовий інтенсив з PHP і я працюю на ньому наставником. Студентам в рамках інтенсиву належить підняти робоче оточення і це замітка націлена спростити цю нелегку для новачка завдання. Є різні способи підняття повноцінного LAMP стека, але ми підемо класичним шляхом. Налаштуємо всі компоненти окремо (без застосування готових комбайнів) і почнемо з PHP (обов'язково буде замітка з розглядом готових збірок LAMP). Оскільки я планую працювати наставникам на інтесівах по PHP і далі, я збираюся написати подібні інструкції для повторення в інших ОС (Linux, macOS). Як то кажуть, краще один раз попотіти, але потім всім стане простіше. Отже, приступаємо.
Завантажуємо PHP для Windows
заходимо на офіційний сайт і завантажуємо актуальну версію PHP. На момент написання замітки це - 7.1.4. На сторінці є кілька варіантів дистрибутивів. У мене Windows 7 x64, відповідно я вибираю zip архів з VC14 x64 Thread Safe.
Зверніть увагу, для завантаження доступна два варіанти дистрибутива: Thread-Safe (TS) і Non-Thread-Safe (NTS). Вибір залежить від того як ви плануєте застосовувати інтерпретатор. TS рекомендується використовувати для одного процесу веб-служб (наприклад, налаштовуючи через модуль mod_php для Apache). NTS рекомендується для застосування IIS (Internet Information Service) і альтернативних FastCGI веб-сервером (наприклад, Apache з модулем FastCGI) і командного рядка.
Встановлюємо PHP 7.1
Почнемо готувати PHP для забезпечення зручності користування з командного рядка. У попередньому кроці ви завантажили архів з дистрибутивом PHP. На відміну від більшості програм, PHP поставляється в простому архіві, а не як інсталяційний пакет. Тому вам доведеться самостійно витягти файли в будь-яку зручну для вас директорію. Я вважаю за краще зберігати подібні речі в корені системного диска. Створіть в корені диска «C:» (або будь-якому іншому місці) директорію «php» і витягніть в неї вміст завантаженого архіву.
В директорії з'явиться безліч файлів, але нас найбільше цікавлять:
- go-pear.bat - сценарій для установки PEAR. Подробиці про PEAR можна почитати в офіційної документації .
- php.exe - дозволяє виконувати PHP сценарії з консолі;
- php-win.exe - дозволяє виконувати PHP сценарії без застосування консолі;
- php-cgi.exe - необхідний для виконання PHP коду в режимі FastCGI;
- php7apache2_4.dll - модуль інтеграції з веб-сервером Apache 2.4.X;
- phpdbg.exe - відладчик;
- php.ini-development - приклад конфігураційного файлу PHP для оточення розробника (development)
- php.ini-production - приклад конфігураційного файлу PHP для робочого оточення (production)
Підключаємо конфігураційний файл
Розпакований дистрибутив у нас є, підключимо для нього конфігураційний файл. Ми збираємося ставити експерименти, тому в якості зразка візьмемо php.ini-development. Зробіть копію цього файлу в директорію php (C: \ php) з ім'ям php.ini. ВАЖЛИВО! Робіть саме копію, не проста перейменування. За час розробки вам може знадобитися змінювати конфігураційний файл і є всі шанси зробити помилку, яку важко буде знайти.
У таких випадках немає нічого кращого, ніж повернутися до еталонних налаштувань. У нашому випадку буде досить повторити копіювання файлу php.ini-development в php.ini. Отже, по закінченню рухів в директорії з php повинен з'явитися файлик php.ini. У подальших замітках ми обов'язково поговоримо про його вмісті більш детально.
Тестуємо PHP з командного рядка
На цьому кроці, так звана «установка» завершена. Відкрийте консоль (cmd.exe, ярлик доступний в меню «Стандартні») і введіть команду:
C: \ php \ php.exe --versionРезультат буде приблизно таким:
PHP 7.1.4 (cli) (built: Apr 11 2017 19:54:37) (ZTS MSVC14 (Visual C ++ 2015) x64) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) одна тисяча дев'ятсот дев'яносто вісім -2017 Zend TechnologiesРезультат підтверджує, що PHP працює. Спробуйте для прикладу створити новий файл-сценарій (я створив файл "test.php" прямо в корені диска "C:") і помістити в нього текст:
<? Php phpinfo ();Тепер спробуйте виконати цей файл і подивіться результат:
C: \ php \ php.exe -f test.phpФункція phpinfo () виводить інформацію по конфігурації PHP в зручному вигляді. Про цю функцію ми ще поговоримо.
Спрощуємо звернення до php.exe
PHP готовий до роботи, але погодьтеся, кожен раз забивати в консолі шлях до php інтерпретатора досить незручно. Щоб спростити собі життя, внесемо невеликі зміни в змінні середовища. Запустимо в панелі управління аплет «Система» (або просто натиснемо гарячу клавішу «Windows + Pause Break». Потім натиснемо на кнопку «Змінити параметри». У вікні «Властивості системи», перейдемо на закладку «Додатково». Знайдіть і натисніть на неї кнопку «Змінні середовища».
Знаходимо в списку змінну «PATH» і натискаємо кнопку «Змінити», з'явиться вікно редагування змінної. В поле «Значення змінної» нам необхідно дописати шлях до директорії з PHP. Перейдіть в самий кінець рядка і через крапку з комою вкажіть шлях до директорії з PHP: C: \ php;
Все, натискайте «Ok». Тепер перезавантажте систему (на жаль, доведеться). Після перезавантаження Windows, звертатися до PHP можна буде просто: php.Напрімер, щоб вивести назву версії досить написати:
php -versionА щоб інтерпретувати файл test.php, розташований в корені диска «C:»:
php -f C: \ test.phpАбо зовсім запустити вбудований веб-сервер:
php -t C: \ -S 127.0.0.1:8888 Listening on http://127.0.0.1:8888 Document root is C: \ Press Ctrl-C to quit.Для тестування відкрийте web-браузер спробуйте звернутися на http://127.0.0.1:8888/test.php . Зверніть увагу, після параметра -t ми вказуємо шлях до директорії, яка стане кореневої директорією веб-сервера. Всі сценарії, розташовані в цій папці будуть доступні для запиту з клієнта. У мене на диску «C:» є один файлик 1.php і саме його я і звертаюсь.
Можна піти трохи далі і асоціювати розширення .php з інтерпретатором, тобто зробити все файли з розширенням php виконуваним за замовчуванням. Для цього вводимо в консолі кілька команд:
assoc .php = phpfile ftype phpfile = "C: \ php \ php.ee" -f "% 1" -% ~ 2Ще трохи про змінних оточення
Тепер давайте поговоримо про те як PHP буде шукати файл настройок конфігурації (згадуємо, про php.ini). В документації приведена повна ланцюжок пошуку. Щоб уникнути зайвих складнощів, рекомендую відразу додати в змінні оточення нову - «PHPRC» і в якості значення вказати шлях до директорії з конфігураційних файлів. У мене конфиг розташовується в теж же директорії, що і основні файли php, отже в якості значення змінної вказую -
«C: \ php». Після внесення зміни буде потрібно перезавантаження.
На цьому у мене все. Перший частина мануала для новачків готова.