PHP.mk документација

Користење на Phar архиви: Phar и PharData класа

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

phar.using.object.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека phar.using.object.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
Користење на Phar архиви: Phar и PharData класа

Референца за `phar.using.object.php` со подобрена типографија и навигација.

phar.using.object.php

Користење на Phar архиви: Phar и PharData класа

На за да работи за класата поддржува читање и манипулација на Phar архиви, како и итерација низ наследената функционалност на RecursiveDirectoryIterator класа. Со поддршка за ArrayAccess интерфејс, датотеките во Phar архива може да се пристапат како да се дел од асоцијативен низ.

На PharData класата го наследува за да работи за, и дозволува креирање и модифицирање на не-извршни (податочни) tar и zip архиви дури и ако phar.readonly=1 во php.ini. Како такви, PharData::setAlias() and PharData::setStub() се и двете оневозможени бидејќи концептот на носии и приклучоци е единствен за извршни phar архиви.

Важно е да се напомене дека при креирање на Phar архива, целосната патека треба да се предаде на за да работи за конструкторот на објектот. Релативните патеки нема да успеат да се иницијализираат.

Претпоставувајќи дека $p е Phar објект иницијализиран на следниов начин:

<?php
$p
= new Phar('/path/to/myphar.phar', 0, 'myphar.phar');
?>

Празен Phar архив ќе биде креиран на /path/to/myphar.phar, или ако /path/to/myphar.phar веќе постои, ќе биде повторно отворен. Буквалниот myphar.phar го демонстрира концептот на носии што може да се користи за повикување на /path/to/myphar.phar во URL-и како во:

<?php
// these two calls to file_get_contents() are equivalent if
// /path/to/myphar.phar has an explicit alias of "myphar.phar"
// in its manifest, or if the phar was initialized with the
// previous example's Phar object setup
$f = file_get_contents('phar:///path/to/myphar.phar/whatever.txt');
$f = file_get_contents('phar://myphar.phar/whatever.txt');
?>

Со новосоздадениот $p за да работи за објект, следново е можно:

  • $a = $p['file.php'] креира PharFileInfo класа што се однесува на содржината на phar://myphar.phar/file.php
  • $p['file.php'] = $v креира нова датотека (phar://myphar.phar/file.php), или презапишува постоечка датотека во myphar.phar. $v може да биде или стринг или отворен покажувач на датотека, во кој случај целата содржина на датотеката ќе се користи за креирање на новата датотека. Забележете дека $p->addFromString('file.php', $v) е функционално еквивалентно на горенаведеното. Исто така е можно да се додаде содржината на датотека со $p->addFile('/path/to/file.php', 'file.php'). На крај, може да се креира празна директориум со $p->addEmptyDir('empty').
  • isset($p['file.php']) може да се користи за да се утврди дали phar://myphar.phar/file.php постои во myphar.phar.
  • unset($p['file.php']) erases phar://myphar.phar/file.php from myphar.phar.

Дополнително, за да работи за објектот е единствениот начин за пристап до метаподатоци специфични за Phar, преку = FilesystemIterator::SKIP_DOTS | FilesystemIterator::UNIX_PATHS, и единствениот начин за поставување или враќање на PHP лоадер стабот на Phar архивата преку ако било кој од параметрите е подолг од 400 бајти. and Phar::createDefaultStub(). Дополнително, компресијата за целата Phar архива одеднаш може да се манипулира само со користење на за да работи за class.

Целосната листа на за да работи за функционалност на објектот е документирана подолу.

На PharFileInfo класата го наследува SplFileInfo класа, и додава неколку методи за манипулирање со детали специфични за Phar на датотека содржана во Phar, како што е манипулирање со компресија и метаподатоци.

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.