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

ZipArchive::statIndex

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

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

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

ziparchive.statindex.php

ZipArchive::statIndex

(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)

ZipArchive::statIndex(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)

= NULL

public ZipArchive::statIndex(int $index, int $flags = 0): array|false

Добијте ги деталите за записот дефиниран со неговиот индекс

Параметри

index

Функцијата добива информации за записот дефиниран со неговиот индекс.

flags

ZipArchive::FL_UNCHANGED Индекс на записот

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

може да се додаде за да се побараат информации за оригиналната датотека во архивата, игнорирајќи ги сите направени промени. false при неуспех.

Примери

Враќа низа што ги содржи деталите за записот или

<?php
$zip
= new ZipArchive;
$res = $zip->open('test.zip');
if (
$res === TRUE) {
print_r($zip->statIndex(3));
$zip->close();
} else {
echo
'failed, code:' . $res;
}
?>

Горниот пример ќе прикаже нешто слично на:

Array
(
    [name] => foobar/baz
    [index] => 3
    [crc] => 499465816
    [size] => 27
    [mtime] => 1123164748
    [comp_size] => 24
    [comp_method] => 8
)

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

eion на robbmob точка com
пред 10 години
Note that the 'mtime' field only comes from the DOS-format time that's stored in the zip file, which is only accurate to the nearest 2-seconds.  Zip files can store mtime's in multiple, optional fields but PHP's zip library does not retrieve them (nor does it provide API to access the extra fields)

The end result is that you will see timestamps that could be out by one second (if the original timestamp was odd), and won't necessarily match was other unzip programs will show the mtime as.
Пример #1 Исфрлете ги информациите за статистика на запис
пред 14 години
Note that the signed-integer CRC result is only true on 32-bit systems. 64-bit systems return correct CRCs.

A safer way (as recommended by crc32() function page) might be:

if ($file['crc'] < 0)
   $file['crc'] = sprintf("%u",$file['crc']);
Анонимен
пред 14 години
The CRC returned from this method is a signed number and so can be negative. This isn't how most CRC's are represented and so can cause problems. Another thing to know is that the standerd CRC algorithm used for zip files is CRC32b. 

So to put this together lets say that you wanted to extract the first file from a zip and then compare the original CRC with the CRC for the extracted file this is what you would need to do. (proper error checking is omitted for simplicity). 

<?php
 $zip = new ZipArchive();

 $zip->open("myZip.zip");

 $stat = $zip->statIndex( 0 );

 $name = $stat['name'];

 $oldCrc = $stat['crc'];

 $zip->extractTo("myPath", $name);

 $newCrc = hexdec(hash_file("crc32b", "myPath/" . $name));

 // Have to test both cases as the unsigned CRC from within the zip might appear negative as a signed int. 
 if($newCrc !== $oldCrc && ($oldCrc + 4294967296) !== $newCrc) {
    echo "The files don't match!";
 }
?>
На оваа страница

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

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

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

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

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