Створюйте автономні виконувані файли PHP за допомогою PHPacker

Перекладено ШІ 2 Laravel News 02 червня, 2026

Хочете дізнатися, як спростити процес розповсюдження ваших PHP-додатків? У нашій статті ми розглянемо, як PHPacker допомагає легко створювати самостійні виконувані файли, що працюють на різних платформах. Читайте далі, щоб дізнатися більше про можливості PHPacker і як ним користуватися!

PHPacker дозволяє вам створювати пакети для будь-якого PHP-скрипта чи PHAR у вигляді незалежних крос-платформних виконуваних файлів. Він спрощує процес об'єднання PHP з вашим додатком, роблячи його розповсюдження легким та безтурботним.

Щоб створити розповсюджувані версії з PHPacker, спочатку потрібно встановити CLI глобально або як залежність проекту за допомогою Composer. Після установки phpacker CLI ви можете створювати версії для Mac, Windows та Linux, використовуючи команду build:

# Створити для конкретної платформи та архітектури
phpacker build mac arm --src=./app.phar
 
# Створити для всіх підтримуваних платформ
phpacker build all --src=./app.phar
 
# Створити з кастомним каталогом виводу
phpacker build --src=./app.phar --dest=./custom-build-path
 
# Створити з конкретним файлом конфігурації PHP
phpacker build --src=./app.phar --ini=./custom-php.ini
 
# Запитати INI визначення інтерактивно
phpacker build --src=./app.phar --ini
 
# Створити з конкретною версією PHP
phpacker build --src=./app.phar --php=8.3

PHPacker підтримує версії PHP 8.2–8.4 на Windows (x64), macOS (arm64/x64) та Linux (arm64, x64). Частиною створення самостійного виконуваного файлу є надання попередньо скомпільованих PHP-бінарників для платформи. Оскільки PHP заздалегідь скомпільовано, він включає найнеобхідніші розширення для запуску CLI-додатків (деталі розширень тут).

Окрім параметрів CLI, ви можете налаштувати свій CLI за допомогою файлу phpacker.json та вказати шлях до кастомних INI налаштувань:

{
    "src": "./bin/app.phar",
    "dest": "./build",
    "ini": "./phpacker.ini",
    "platform": "all",
    "php": "8.4",
    "repository": "optional/custom-php-bin-repo"
}

# Приклад

Ось швидкий приклад створення CLI з використанням PHPacker, який виводить Hello, World!. Після створення проекту Composer потрібно додати phpacker:

composer require phpacker/phpacker --dev

Далі створіть файл index.php у проекті з наступним кодом для демонстрації передачі аргументу:

<?php
 
$name = $argv[1] ?? 'World';
 
echo "Hello, {$name}!", "\n";

В реальному проекті ви, ймовірно, використаєте Symfony Console, Laravel Zero або MiniCLI, які вимагають використовувати архів .phar для створення з PHPacker, але однокомпонентний скрипт ідеально підходить для ознайомлення з PHPacker.

Скористайтеся командою для ручного створення:

$ phpacker build mac arm --src=./index.php
 
 Ви працюєте з останньою версією: phpacker/php-bin:0.2.4
 
 mac - arm ·············································· ✅

Після цього ви можете запустити свій CLI. Залежно від платформи та архітектури, ви знайдете його в каталозі build/. Я на macOS ARM, тому можу запустити свій CLI таким чином:

$ build/mac/mac-arm
Hello, World!
 
$ build/mac/mac-arm Paul
Hello, Paul!

# Основні особливості

  • Самостійні виконувані файли - Розподіляйте свій CLI-додаток як єдиний файл - PHP вбудовано у ваш додаток
  • Крос-платформна підтримка - Створюйте виконувані файли для macOS, Linux та Windows з одного кодового базису
  • Легке розповсюдження - Автоматична установка правильного виконуваного файлу для будь-якої платформи з нашим Composer Installer
  • Конфігурація проекту - Зберігайте налаштування побудови та INI-файли у версійованих файлах
  • Підтримка кількох версій PHP - Вибирайте серед PHP 8.2, 8.3 або 8.4 відповідно до вимог вашого додатка
  • Кастомні PHP-бінарники - Використовуйте власні кастомно збудовані PHP-бінарники з конкретними розширеннями

# Дізнайтеся більше

Рекомендую розпочати знайомство з PHPacker, ознайомившись з документацією з установки. Після установки в документації є варіанти конфігурації та інші деталі про PHP-бінарники. Обов'язково прочитайте поради щодо додатків — при створенні самостійних виконуваних файлів важливо розуміти обмеження та інші патерни використання, такі як доступ до змінних середовища та файлової системи.

Ви можете переглядати вихідний код PHPacker на GitHub за адресою phpacker/phpacker.

Популярні

Інше, що варто прочитати

30 Оновлено 01 червня, 2026

Інтеграція Laravel Socialite з бібліотекою Google Client PHP

Ви хочете навчитися, як інтегрувати Google OAuth у вашому проекті Laravel, використовуючи Socialite? Дізнайтеся, як налаштувати доступ до сервісів Google, таких як Календар, у нашій сьогоднішній статті

19 Оновлено 01 червня, 2026

Використання штучного інтелекту для управління перекладами в Laravel

Досліджуйте нові можливості локалізації вашого Laravel-додатку з пакунками, які використовують штучний інтелект, такими як ChatGPT та Claude. Які рішення можуть спростити ваш процес перекладу та зробити його більш точним? Читайте далі, щоб дізнатися більше!

11 Оновлено 01 червня, 2026

Управління доступом у Filament за допомогою плагіна Shield

Дізнайтеся, як пакет Filament Shield забезпечує управління доступом до ваших панелей, ресурсів і віджетів у Laravel. Ця стаття розкриває основні можливості пакету, включаючи просту установку та підтримку багатокористувацьких середовищ — не пропустіть!