[php-src] Issue #20863: Unable to use getimagesize on HEIC/HEIF images

[email protected] (earthiverse)
Newsgroups php.bugs
Message-ID <[email protected]>
Issue: https://github.com/php/php-src/issues/20863
Author: earthiverse

### Description

I downloaded the heic from the pull request https://github.com/php/php-src/pull/18940, and that one *does* work, but none of the sample images I downloaded from https://heic.digital/samples/ work.

The following code:

```php
<?php

$dir = __DIR__;

$allowedExt = ['jpg', 'jpeg', 'heic', 'heif'];

foreach (new DirectoryIterator($dir) as $file) {
    if ($file->isDot() || !$file->isFile()) {
        continue;
    }
    
    $ext = strtolower($file->getExtension());
    if (!in_array($ext, $allowedExt, true)) {
        continue;
    }
    
    $path = $file->getPathname();
    $info = @getimagesize($path);
    
    if ($info === false) {
        echo "Failed: $path\n";
        continue;
    }
    
    [$width, $height, $type] = $info;
    echo "$path => {$width}x$height\n";
}
```

Resulted in this output:
```
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/soundboard.heic
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/shelf-christmas-decoration.heic
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/test4pix.heic => 54x84
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/sewing-threads.heic
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/chef-with-trumpet.heic
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/childrens-show-theater.heic
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/classic-car.heic
Failed: /Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/greyhounds-looking-for-a-table.heic
```

But I expected this output instead:
```
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/soundboard.heic => 4000x3000
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/shelf-christmas-decoration.heic => 4000x3000
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/test4pix.heic => 54x84
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/sewing-threads.heic => 4000x3000
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/chef-with-trumpet.heic => 4032x3024
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/converted.jpeg => 8736x5856
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/childrens-show-theater.heic => 4032x3024
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/classic-car.heic => 3024x4032
/Users/earthiverse/Sites/media-store/tests/Codeception/Support/Data/images/heif/greyhounds-looking-for-a-table.heic => 3024x4032
```


### PHP Version

```plain
PHP 8.5.1 (cli) (built: Dec 16 2025 15:59:07) (NTS)
Copyright (c) The PHP Group
Built by Shivam Mathur
Zend Engine v4.5.1, Copyright (c) Zend Technologies
    with Xdebug v3.5.0, Copyright (c) 2002-2025, by Derick Rethans
    with Zend OPcache v8.5.1, Copyright (c), by Zend Technologies
```

### Operating System

MacOS Tahoe 26.2
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.