Skip to content

Regression: extension_loaded('zip')/ZipArchive/zip_open phantom under PROFILE=8.4 — Zend ext/zip absent (re-#18137, ext/zip) #25010

Description

@PurHur

Category

stdlib · php-src-strict · phantom extension (zip under PROFILE=8.4)

Problem

Pinned-container Zend 8.2 does not ship ext/zip. On the default profile, php-compiler correctly reports zip absent (matching #18137). Under PHP_COMPILER_PROFILE=8.4, it again advertises the module and entry points (extension_loaded('zip'), class_exists('ZipArchive'), function_exists('zip_open')).

Related Reflection-only ticket #24666 (zip_open named args) assumes the symbol exists — this issue is the PROFILE=8.4 registration phantom vs the reference Zend build.

Probed 2026-07-29 Zend 8.2.32 vs bin/vm.php @ 3ab3fae30.

Repro Zend 8.2 VM default VM PROFILE=8.4
extension_loaded('zip') false false true
class_exists('ZipArchive') false false true
function_exists('zip_open') false false true

php-src reference

PHP implementation target

Repro

./script/docker-exec.sh -- bash -lc 'cat > /tmp/zip_ph.php <<'"'"'PHP'"'"'
<?php
echo "extension_loaded(zip)="; var_export(extension_loaded("zip")); echo "\n";
echo "class_exists(ZipArchive)="; var_export(class_exists("ZipArchive")); echo "\n";
echo "function_exists(zip_open)="; var_export(function_exists("zip_open")); echo "\n";
PHP
php /tmp/zip_ph.php
php bin/vm.php /tmp/zip_ph.php
PHP_COMPILER_PROFILE=8.4 php bin/vm.php /tmp/zip_ph.php'

Done when

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:vmVirtual machinebugSomething isn't workingimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimphase-4:stdlibPhase 4 – stdlib for web appsstdlib

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions