PharData::copy

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

PharData::copy β€” ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ» Π²Π½ΡƒΡ‚Ρ€ΠΈ tar- ΠΈΠ»ΠΈ zip-Π°Ρ€Ρ…ΠΈΠ²Π° Π² Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π°Ρ€Ρ…ΠΈΠ²Π°

ОписаниС

public function PharData::copy(string $from, string $to): true

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ» ΠΈΠ· tar- ΠΈΠ»ΠΈ zip-Π°Ρ€Ρ…ΠΈΠ²Π° Π² Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π°Ρ€Ρ…ΠΈΠ²Π°. Π­Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ориСнтированная Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ copy() с ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊΠ° phar.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

from

to

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния

Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.

Ошибки

ΠœΠ΅Ρ‚ΠΎΠ΄ выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ UnexpectedValueException, Ссли исходный Ρ„Π°ΠΉΠ» Π½Π΅ сущСствуСт, Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ„Π°ΠΉΠ» ΡƒΠΆΠ΅ сущСствуСт, доступ Π½Π° запись Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΠ»ΠΈ, Ссли хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈΠ»ΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ исходный Ρ„Π°ΠΉΠ», ΠΈΠ»ΠΈ выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ PharException, Ссли Π² phar-Ρ„Π°ΠΉΠ» Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ измСнСния.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ #1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ копирования Ρ„Π°ΠΉΠ»Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ tar- ΠΈΠ»ΠΈ zip-Π°Ρ€Ρ…ΠΈΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ PharData::copy()

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° PharData::copy() ΠΈ эквивалСнтной Π΅ΠΌΡƒ ΠΏΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ° для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ. Основная Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°ΠΌΠΈ состоит Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ошибок. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса PharData Π²Ρ‹Π±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π° ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ trigger_error().

<?php

try {
$phar = new PharData('myphar.tar');

$phar['a'] = 'ΠΏΡ€ΠΈΠ²Π΅Ρ‚';
$phar->copy('a', 'b');

echo
$phar['b']; // Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ "phar://myphar.tar/b"
} catch (Exception $e) {
// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок
}

// ΠžΠ±Ρ‘Ρ€Ρ‚ΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠ° эквивалСнтна ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ.
// ВмСсто ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ срабатываСт ошибка уровня E_WARNING
copy('phar://myphar.tar/a', 'phar//myphar.tar/c');
echo
file_get_contents('phar://myphar.tar/c'); // Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ "ΠΏΡ€ΠΈΠ²Π΅Ρ‚"

?>
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ добавляли примСчания для страницы