Deprecated: Optional parameter $keys declared before required parameter $cms_id is implicitly treated as a required parameter in /home/www/dev/work/class/blog/CmsKey.php on line 75

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\php::$title is deprecated in /home/www/dev/work/website/lvesu/class/controller/blog/php.php on line 28

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\php::$outlink is deprecated in /home/www/dev/work/website/lvesu/template/blog/cms/php.manual.tpl on line 2

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\php::$status is deprecated in /home/www/dev/work/website/lvesu/template/blog/index.head.php on line 2
PHP - Manual: ZipArchive::getFromIndex - 互联网笔记

略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: ZipArchive::getFromIndex

2025-04-28

ZipArchive::getFromIndex

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

ZipArchive::getFromIndexReturns the entry contents using its index

说明

public ZipArchive::getFromIndex(int $index, int $len = 0, int $flags = 0): string|false

Returns the entry contents using its index.

参数

index

Index of the entry

len

The length to be read from the entry. If 0, then the entire entry is read.

flags

The flags to use to open the archive. the following values may be ORed to it.

返回值

Returns the contents of the entry on success 或者在失败时返回 false.

示例

示例 #1 Get the file contents

<?php
$zip
= new ZipArchive;
if (
$zip->open('test.zip') === TRUE) {
echo
$zip->getFromIndex(2);
$zip->close();
} else {
echo
'failed';
}
?>

参见

添加备注

用户贡献的备注 5 notes

up
3
Ruben
9 years ago
For detecting folders use function ::getNameIndex:

//$zip = ZipArchive::open()
$entry = $zip->getNameIndex($i);
$isDir = (substr($entry, -1, 1) == '/');

Thanks to Alex Howansky @ http://stackoverflow.com/a/19299626/2747584
up
1
StanE
10 years ago
Unlike what "jana.vasseru" said 7 years ago, this method does not return FALSE for folders (anymore?). It seems that there is no way to find out if an entry is a directory of file.
up
0
poorpal at example dot com
9 years ago
both getFromIndex and getFromName leak memory. Beware specially if you use them inside a long running loop. Even closing and re-opening the zip file doesn't help.
up
-1
matt3k
11 years ago
Note, length is in characters and not bytes.
up
-4
jana.vasseru
17 years ago
Note that getFromIndex returns false for directories.

官方地址:https://www.php.net/manual/en/ziparchive.getfromindex.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3