Skip to content

Commit f3b1f34

Browse files
committed
Deprecate the procedural API of ext/zip
Closes GH-5746
1 parent da1c672 commit f3b1f34

17 files changed

+253
-31
lines changed

UPGRADING

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -624,6 +624,7 @@ PHP 8.0 UPGRADE NOTES
624624
. Using empty file as ZipArchive is deprecated. Libzip 1.6.0
625625
do not accept empty files as valid zip archives any longer.
626626
Existing workaround will be removed in next version.
627+
. The procedural API of Zip is deprecated. Use ZipArchive instead.
627628

628629
- Reflection:
629630
. ReflectionFunction::isDisabled() is deprecated, as it is no longer possible

ext/zip/php_zip.stub.php

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,44 +2,66 @@
22

33
/** @generate-function-entries */
44

5-
/** @return resource|int|false */
5+
/**
6+
* @return resource|int|false
7+
* @deprecated
8+
*/
69
function zip_open(string $filename) {}
710

811
/**
912
* @param resource $zip
13+
* @deprecated
1014
*/
1115
function zip_close($zip): void {}
1216

1317
/**
1418
* @param resource $zip
1519
* @return resource|false
20+
* @deprecated
1621
*/
1722
function zip_read($zip) {}
1823

1924
/**
2025
* @param resource $zip_dp
2126
* @param resource $zip_entry
27+
* @deprecated
2228
*/
2329
function zip_entry_open($zip_dp, $zip_entry, string $mode = 'rb'): bool {}
2430

2531
/**
2632
* @param resource $zip_ent
33+
* @deprecated
2734
*/
2835
function zip_entry_close($zip_ent): bool {}
2936

30-
/** @param resource $zip_entry */
37+
/**
38+
* @param resource $zip_entry
39+
* @deprecated
40+
*/
3141
function zip_entry_read($zip_entry, int $len = 1024): string|false {}
3242

33-
/** @param resource $zip_entry */
43+
/**
44+
* @param resource $zip_entry
45+
* @deprecated
46+
*/
3447
function zip_entry_name($zip_entry): string|false {}
3548

36-
/** @param resource $zip_entry */
49+
/**
50+
* @param resource $zip_entry
51+
* @deprecated
52+
*/
3753
function zip_entry_compressedsize($zip_entry): int|false {}
3854

39-
/** @param resource $zip_entry */
55+
/**
56+
* @param resource $zip_entry
57+
* @deprecated
58+
*/
4059
function zip_entry_filesize($zip_entry): int|false {}
4160

42-
/** @param resource $zip_entry */
61+
/**
62+
* @param resource $zip_entry
63+
* @deprecated
64+
*/
4365
function zip_entry_compressionmethod($zip_entry): string|false {}
4466

4567
class ZipArchive

ext/zip/php_zip_arginfo.h

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -366,16 +366,16 @@ ZEND_METHOD(ZipArchive, isEncryptionMethodSupported);
366366

367367

368368
static const zend_function_entry ext_functions[] = {
369-
ZEND_FE(zip_open, arginfo_zip_open)
370-
ZEND_FE(zip_close, arginfo_zip_close)
371-
ZEND_FE(zip_read, arginfo_zip_read)
372-
ZEND_FE(zip_entry_open, arginfo_zip_entry_open)
373-
ZEND_FE(zip_entry_close, arginfo_zip_entry_close)
374-
ZEND_FE(zip_entry_read, arginfo_zip_entry_read)
375-
ZEND_FE(zip_entry_name, arginfo_zip_entry_name)
376-
ZEND_FE(zip_entry_compressedsize, arginfo_zip_entry_compressedsize)
377-
ZEND_FE(zip_entry_filesize, arginfo_zip_entry_filesize)
378-
ZEND_FE(zip_entry_compressionmethod, arginfo_zip_entry_compressionmethod)
369+
ZEND_DEP_FE(zip_open, arginfo_zip_open)
370+
ZEND_DEP_FE(zip_close, arginfo_zip_close)
371+
ZEND_DEP_FE(zip_read, arginfo_zip_read)
372+
ZEND_DEP_FE(zip_entry_open, arginfo_zip_entry_open)
373+
ZEND_DEP_FE(zip_entry_close, arginfo_zip_entry_close)
374+
ZEND_DEP_FE(zip_entry_read, arginfo_zip_entry_read)
375+
ZEND_DEP_FE(zip_entry_name, arginfo_zip_entry_name)
376+
ZEND_DEP_FE(zip_entry_compressedsize, arginfo_zip_entry_compressedsize)
377+
ZEND_DEP_FE(zip_entry_filesize, arginfo_zip_entry_filesize)
378+
ZEND_DEP_FE(zip_entry_compressionmethod, arginfo_zip_entry_compressionmethod)
379379
ZEND_FE_END
380380
};
381381

ext/zip/tests/bug7214.phpt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,14 @@ if (strlen($contents) == zip_entry_filesize($entry)) {
1818
}
1919

2020
?>
21-
--EXPECT--
21+
--EXPECTF--
22+
Deprecated: Function zip_open() is deprecated in %s on line %d
23+
24+
Deprecated: Function zip_read() is deprecated in %s on line %d
25+
26+
Deprecated: Function zip_entry_filesize() is deprecated in %s on line %d
27+
28+
Deprecated: Function zip_entry_read() is deprecated in %s on line %d
29+
30+
Deprecated: Function zip_entry_filesize() is deprecated in %s on line %d
2231
Ok

ext/zip/tests/doubleclose.phpt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,13 @@ if ($zip->status == ZIPARCHIVE::ER_OK) {
3939
Done
4040
--EXPECTF--
4141
Procedural
42+
43+
Deprecated: Function zip_open() is deprecated in %s on line %d
44+
45+
Deprecated: Function zip_close() is deprecated in %s on line %d
4246
NULL
47+
48+
Deprecated: Function zip_close() is deprecated in %s on line %d
4349
zip_close(): supplied resource is not a valid Zip Directory resource
4450
Object
4551
bool(true)

ext/zip/tests/oo_setcompression.phpt

Lines changed: 49 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,17 +55,65 @@ zip_close($zip);
5555
$tmpfile = __DIR__ . '/oo_setcompression.zip';
5656
unlink($tmpfile);
5757
?>
58-
--EXPECT--
58+
--EXPECTF--
5959
bool(true)
6060
bool(true)
6161
bool(true)
6262
bool(true)
6363
bool(true)
6464
bool(true)
65+
66+
Deprecated: Function zip_open() is deprecated in %s on line %d
67+
68+
Deprecated: Function zip_read() is deprecated in %s on line %d
69+
70+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
71+
72+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
6573
entry1.txt: deflated
74+
75+
Deprecated: Function zip_read() is deprecated in %s on line %d
76+
77+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
78+
79+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
6680
entry2.txt: deflated
81+
82+
Deprecated: Function zip_read() is deprecated in %s on line %d
83+
84+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
85+
86+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
6787
dir/entry3.txt: stored
88+
89+
Deprecated: Function zip_read() is deprecated in %s on line %d
90+
91+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
92+
93+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
6894
entry4.txt: deflated
95+
96+
Deprecated: Function zip_read() is deprecated in %s on line %d
97+
98+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
99+
100+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
69101
entry5.txt: stored
102+
103+
Deprecated: Function zip_read() is deprecated in %s on line %d
104+
105+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
106+
107+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
70108
entry6.txt: deflated
109+
110+
Deprecated: Function zip_read() is deprecated in %s on line %d
111+
112+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
113+
114+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
71115
entry7.txt: deflated
116+
117+
Deprecated: Function zip_read() is deprecated in %s on line %d
118+
119+
Deprecated: Function zip_close() is deprecated in %s on line %d

ext/zip/tests/zip_close.phpt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,8 @@ zip_close($zip);
1212
echo "OK";
1313

1414
?>
15-
--EXPECT--
15+
--EXPECTF--
16+
Deprecated: Function zip_open() is deprecated in %s on line %d
17+
18+
Deprecated: Function zip_close() is deprecated in %s on line %d
1619
OK

ext/zip/tests/zip_entry_close.phpt

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,19 @@ try {
1818
zip_close($zip);
1919
?>
2020
Done
21-
--EXPECT--
22-
entry_open: bool(true)
23-
entry_close: bool(true)
24-
entry_close: zip_entry_close(): supplied resource is not a valid Zip Entry resource
21+
--EXPECTF--
22+
Deprecated: Function zip_open() is deprecated in %s on line %d
23+
24+
Deprecated: Function zip_read() is deprecated in %s on line %d
25+
entry_open:
26+
Deprecated: Function zip_entry_open() is deprecated in %s on line %d
27+
bool(true)
28+
entry_close:
29+
Deprecated: Function zip_entry_close() is deprecated in %s on line %d
30+
bool(true)
31+
entry_close:
32+
Deprecated: Function zip_entry_close() is deprecated in %s on line %d
33+
zip_entry_close(): supplied resource is not a valid Zip Entry resource
34+
35+
Deprecated: Function zip_close() is deprecated in %s on line %d
2536
Done

ext/zip/tests/zip_entry_compressedsize.phpt

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,29 @@ while ($entry = zip_read($zip)) {
1515
zip_close($zip);
1616

1717
?>
18-
--EXPECT--
18+
--EXPECTF--
19+
Deprecated: Function zip_open() is deprecated in %s on line %d
20+
21+
Deprecated: Function zip_read() is deprecated in %s on line %d
22+
23+
Deprecated: Function zip_entry_compressedsize() is deprecated in %s on line %d
1924
5
25+
26+
Deprecated: Function zip_read() is deprecated in %s on line %d
27+
28+
Deprecated: Function zip_entry_compressedsize() is deprecated in %s on line %d
2029
4
30+
31+
Deprecated: Function zip_read() is deprecated in %s on line %d
32+
33+
Deprecated: Function zip_entry_compressedsize() is deprecated in %s on line %d
2134
0
35+
36+
Deprecated: Function zip_read() is deprecated in %s on line %d
37+
38+
Deprecated: Function zip_entry_compressedsize() is deprecated in %s on line %d
2239
24
40+
41+
Deprecated: Function zip_read() is deprecated in %s on line %d
42+
43+
Deprecated: Function zip_close() is deprecated in %s on line %d

ext/zip/tests/zip_entry_compressionmethod.phpt

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,29 @@ while ($entry = zip_read($zip)) {
1515
zip_close($zip);
1616

1717
?>
18-
--EXPECT--
18+
--EXPECTF--
19+
Deprecated: Function zip_open() is deprecated in %s on line %d
20+
21+
Deprecated: Function zip_read() is deprecated in %s on line %d
22+
23+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
1924
stored
25+
26+
Deprecated: Function zip_read() is deprecated in %s on line %d
27+
28+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
2029
stored
30+
31+
Deprecated: Function zip_read() is deprecated in %s on line %d
32+
33+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
2134
stored
35+
36+
Deprecated: Function zip_read() is deprecated in %s on line %d
37+
38+
Deprecated: Function zip_entry_compressionmethod() is deprecated in %s on line %d
2239
deflated
40+
41+
Deprecated: Function zip_read() is deprecated in %s on line %d
42+
43+
Deprecated: Function zip_close() is deprecated in %s on line %d

ext/zip/tests/zip_entry_filesize.phpt

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,29 @@ while ($entry = zip_read($zip)) {
1515
zip_close($zip);
1616

1717
?>
18-
--EXPECT--
18+
--EXPECTF--
19+
Deprecated: Function zip_open() is deprecated in %s on line %d
20+
21+
Deprecated: Function zip_read() is deprecated in %s on line %d
22+
23+
Deprecated: Function zip_entry_filesize() is deprecated in %s on line %d
1924
5
25+
26+
Deprecated: Function zip_read() is deprecated in %s on line %d
27+
28+
Deprecated: Function zip_entry_filesize() is deprecated in %s on line %d
2029
4
30+
31+
Deprecated: Function zip_read() is deprecated in %s on line %d
32+
33+
Deprecated: Function zip_entry_filesize() is deprecated in %s on line %d
2134
0
35+
36+
Deprecated: Function zip_read() is deprecated in %s on line %d
37+
38+
Deprecated: Function zip_entry_filesize() is deprecated in %s on line %d
2239
27
40+
41+
Deprecated: Function zip_read() is deprecated in %s on line %d
42+
43+
Deprecated: Function zip_close() is deprecated in %s on line %d

ext/zip/tests/zip_entry_name.phpt

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,29 @@ while ($entry = zip_read($zip)) {
1515
zip_close($zip);
1616

1717
?>
18-
--EXPECT--
18+
--EXPECTF--
19+
Deprecated: Function zip_open() is deprecated in %s on line %d
20+
21+
Deprecated: Function zip_read() is deprecated in %s on line %d
22+
23+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
1924
foo
25+
26+
Deprecated: Function zip_read() is deprecated in %s on line %d
27+
28+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
2029
bar
30+
31+
Deprecated: Function zip_read() is deprecated in %s on line %d
32+
33+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
2134
foobar/
35+
36+
Deprecated: Function zip_read() is deprecated in %s on line %d
37+
38+
Deprecated: Function zip_entry_name() is deprecated in %s on line %d
2239
foobar/baz
40+
41+
Deprecated: Function zip_read() is deprecated in %s on line %d
42+
43+
Deprecated: Function zip_close() is deprecated in %s on line %d

ext/zip/tests/zip_entry_open.phpt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,13 @@ zip_entry_close($entry);
1313
zip_close($zip);
1414

1515
?>
16-
--EXPECT--
16+
--EXPECTF--
17+
Deprecated: Function zip_open() is deprecated in %s on line %d
18+
19+
Deprecated: Function zip_read() is deprecated in %s on line %d
20+
21+
Deprecated: Function zip_entry_open() is deprecated in %s on line %d
1722
OK
23+
Deprecated: Function zip_entry_close() is deprecated in %s on line %d
24+
25+
Deprecated: Function zip_close() is deprecated in %s on line %d

ext/zip/tests/zip_entry_read.phpt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,17 @@ zip_entry_close($entry);
1414
zip_close($zip);
1515

1616
?>
17-
--EXPECT--
17+
--EXPECTF--
18+
Deprecated: Function zip_open() is deprecated in %s on line %d
19+
20+
Deprecated: Function zip_read() is deprecated in %s on line %d
21+
22+
Deprecated: Function zip_entry_open() is deprecated in %s on line %d
23+
24+
Deprecated: Function zip_entry_read() is deprecated in %s on line %d
1825
foo
26+
27+
28+
Deprecated: Function zip_entry_close() is deprecated in %s on line %d
29+
30+
Deprecated: Function zip_close() is deprecated in %s on line %d

0 commit comments

Comments
 (0)