Как преобразовать php-скрипт в phar-файл?

Цель проекта — преобразовать php-скрипт в .phar.

Мой проект состоит из:
1 единственный index.php, который вызывает классы в / lib и / database папки

цель состоит в том, чтобы как можно меньше распространяемых файлов (в идеале 2: index.php и assets.phar, который будет включать все файлы из / lib и / database) или даже 1 (index.phar)

Я попытался с empir с любым успехом: кто-то делал это раньше?

Любой учебник доступен?

2

Решение

использование Phar учебный класс. Например, положить это в compress.php:

$phar = new Phar('index.phar');
$phar->addFile('index.php');
$phar->buildFromDirectory('lib');
$phar->buildFromDirectory('database');

Бежать php compress.php из командной строки. Вуаля, у тебя есть Фар.

3

Другие решения

Я использую следующий скрипт:

<?php
$phar = new \Phar(__DIR__ . '/index.phar');
$phar->startBuffering(); // For performance reasons. Ordinarily, every time a file within a Phar archive is created or modified in any way, the entire Phar archive will be recreated with the changes.
$phar->addFile('index.php');
$phar->addFile('composer.json');
$phar->addFile('composer.lock');
$phar->buildFromDirectory(__DIR__ . '/vendor');
$phar->stopBuffering();

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

$ php -dphar.readonly=0 index.php

(Создание phar-архивов по умолчанию отключено в PHP.)

2

По вопросам рекламы [email protected]