Computer >> Máy Tính >  >> Lập trình >> PHP

PHP phar://

Giới thiệu

phar:// trình bao bọc luồng có sẵn trong tất cả các phiên bản PHP sau 5.3.0. Phar là viết tắt của PHP Archive . Nó được sử dụng để phân phối ứng dụng hoặc thư viện PHP và được thực thi như một tệp PHP bình thường. Phar:// wrapper hỗ trợ mở tệp bằng fopen () cho các hoạt động đọc / ghi, đổi tên và luồng thư mục opendir () cũng như tạo và xóa các thư mục.

Phar lớp cho phép đóng gói các tài nguyên ứng dụng chứa bên trong một thư mục trong kho lưu trữ phar. Để thực hiện các thao tác đọc, kho lưu trữ này được đưa vào phar:// trình bao bọc

Xây dựng kho lưu trữ phar

Để bắt đầu, hãy đảm bảo rằng phar.readonly cài đặt trong php.ini được đặt thành 0. Sau đó, tạo một thư mục src trong đó tất cả các tài nguyên của một ứng dụng được đưa vào. Tạo tệp index.php

<?php
echo "phar application started";
?>

Sử dụng đối tượng của lớp Phar để tạo kho lưu trữ phar chứa các tệp trong thư mục src với buildFromDirectory () phương pháp. Chỉ định index.php là setDefaultStub

<?php
// The php.ini setting phar.readonly must be set to 0
$pharFile = 'app.phar';
// clean up
if (file_exists($pharFile)) {
   unlink($pharFile);
}
if (file_exists($pharFile . '.gz')) {
   unlink($pharFile . '.gz');
}
// create phar
$p = new Phar($pharFile);
// creating our library using whole directory
$p->buildFromDirectory('src/');
// pointing main file which requires all classes
$p->setDefaultStub('index.php', '/index.php');
// plus - compressing it into gzip
$p->compress(Phar::GZ);
echo "$pharFile successfully created";
?>

Chạy tập lệnh trên từ dòng lệnh

php create-phar.php

Thao tác này sẽ tạo app.phar trong thư mục làm việc. Để chạy kho lưu trữ phar, hãy sử dụng lệnh sau

php app.phar

Sử dụng phar:// wrapper

<?php
echo file_get_contents('phar://app.phar/index.php');
?>

Thao tác này sẽ hiển thị nội dung của tệp index.php