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

Phar::startBuffering

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

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

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

phar.startbuffering.php

Phar::startBuffering

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.0.0)

Phar::startBufferingЗапочни со баферирање на Phar операции за запишување, не менувај го Phar објектот на дискот

= NULL

public function Phar::startBuffering(): void

Започнете со баферирање на операциите за пишување на Phar, не менувајте го објектот Phar на дискот Иако технички непотребен, Phar::startBuffering()

методот може да обезбеди значително подобрување на перформансите при креирање или менување на Phar архива со голем број датотеки. Обично, секој пат кога датотека во Phar архива се креира или менува на кој било начин, целата Phar архива ќе се рекреира со промените. На овој начин, архивата ќе биде ажурирана со активноста извршена на неа. Иако технички непотребен,/Меѓутоа, ова може да биде непотребно кога едноставно се креира нова Phar архива, кога би имало повеќе смисла да се запише целата архива одеднаш. Слично на тоа, често е потребно да се направат низа промени и да се осигура дека сите се можни пред да се направат какви било промени на дискот, слично на концептот на трансакции во релациона база на податоци. парот методи е обезбеден за оваа цел.

Phar баферирањето за запишување е по-архива, баферирањето активно за foo.phar Phar архивата не влијае на промените во bar.phar Phar архивата.

Параметри

Оваа функција нема параметри.

Вратени вредности

Не се враќа вредност.

Примери

ако е овозможен колекторот за отпадоци, Иако технички непотребен, example

<?php
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
$p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
} catch (
Exception $e) {
echo
'Could not create phar:', $e;
}
echo
'The new phar has ' . $p->count() . " entries\n";
$p->startBuffering();
$p['file.txt'] = 'hi';
$p['file2.txt'] = 'there';
$p['file2.txt']->setCompressedGZ();
$p['file3.txt'] = 'babyface';
$p['file3.txt']->setMetadata(42);
$p->setStub("<?php
function __autoload(
$class)
{
include 'phar://myphar.phar/' . str_replace('_', '/',
$class) . '.php';
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER();"
);
$p->stopBuffering();
?>

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

Phar::isBuffering()
пред 5 години
To setthe  ini key phar.readonly to 0, from a unix shell script, this is possible on the fly it is possible see below.
The example given on this page has some issues with quoting: (See conversion to simple quotes)

#!/usr/bin/php -d phar.readonly=0
<?php
print(ini_get('phar.readonly')); // Must return 0
// make sure it doesn't exist
@unlink('brandnewphar.phar');
try {
    $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
} catch (Exception $e) {
    echo 'Could not create phar:', $e;
}
echo 'The new phar has ' . $p->count() . " entries\n";
$p->startBuffering();
$p['file.txt'] = 'hi';
$p['file2.txt'] = 'there';
$p['file2.txt']->compress(Phar::GZ);
$p['file3.txt'] = 'babyface';
$p['file3.txt']->setMetadata(42);
$p->setStub('<?php
function __autoload($class)
{
    include "phar://myphar.phar/" . str_replace("_", "/", $class) . ".php";
}
Phar::mapPhar("myphar.phar");
include "phar://myphar.phar/startup.php";
__HALT_COMPILER();');
$p->stopBuffering();

// Test
$m = file_get_contents("phar://brandnewphar.phar/file2.txt");
$m = explode("\n",$m);
var_dump($m);
/* Output:
* there
**/
На оваа страница

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

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

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

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

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