zip_open() 与 ZipArchive::open

zip_open() versus ZipArchive::open

http://php.net/manual/en/ziparchive.open.php and http://php.net/manual/en/function.zip-open.php 似乎在做同样的事情。我错过了什么吗?什么时候应该用一个代替另一个?

一种是面向过程的,一种是面向对象的,但还是有一些区别的。查看每种类型的 return 类型。此外,zip_open() 在 PHP 4 中可用,而 ZipArchive::open() 仅在 PHP 5 中可用。

在大多数情况下,我可能会使用面向对象ZipArchive

如果您阅读了手册页,说明会说明不同之处:

http://php.net/manual/en/function.zip-open.php:

Opens a new zip archive for reading.


http://php.net/manual/en/ziparchive.open.php:

Opens a new zip archive for reading, writing or modifying.


另外,PHP 中有几个选项既有过程的(函数)又有面向对象的(类)选项。 类 也不兼容旧版本的 PHP。通常应该使用面向对象(如果可用的话),因为这是 PHP 中更多内容的风格。它提供了更大的灵活性和未来的兼容性。这些功能通常仅适用于遗留应用程序,并且不会破坏旧脚本的向后兼容性。但是,在某些情况下,例如 MySQL,它们已被弃用。