Take the State of PHP 2026 Survey →

Deprecate and Remove image2wbmp() View as Markdown

Implemented (PHP 7.3)
Authors
Christoph M. Becker, cmb@php.net
Date
2018-05-26
Version
1.0
Source
wiki.php.net/rfc/image2wbmp

Vote

Deprecate and Remove image2wbmp() closed
Yes
14
No
0
14 voters
ab Yes 2018-06-08 07:53
ashnazg Yes 2018-06-04 14:08
cmb Yes 2018-05-26 14:04
daverandom Yes 2018-06-06 13:56
emir Yes 2018-05-28 10:19
galvao Yes 2018-06-01 19:04
jhdxr Yes 2018-06-08 15:37
kalle Yes 2018-05-26 14:21
kguest Yes 2018-05-28 08:58
marcio Yes 2018-06-06 17:13
mariano Yes 2018-06-06 13:57
nikic Yes 2018-06-06 13:37
sammyk Yes 2018-05-26 17:49
sobak Yes 2018-05-27 05:19

Discussions on the mailing list

What to do with image2wbmp()?
by Christoph M. Becker · 3 messages
[RFC] Deprecation of image2wbmp()
by Christoph M. Becker · 1 message
[VOTE] Deprecate and Remove image2wbmp()
by Christoph M. Becker · 3 messages

RFC text

Copied from wiki.php.net, last synchronized Oct 13, 2026 11:51 UTC

Introduction

ext/gd has two functions to output WBMP 1) images: imagewbmp() and image2wbmp(). Both are supposed to handle the necessary monochrome conversion by different means. While the former function allows the desired foreground color to be specified, the latter function is supposed to take a brightness threshold parameter. However, as of PHP 5.0.0 the threshold parameter of image2wbmp() is treated as foreground color, so both functions are basically identical.

This pointless duplication of functionality could be resolved by fixing image2wbmp()according to the documentation (i.e. treat the third parameter actually as brightness treshold), but

  • fixing this 10+y old bug is likely to cause more harm than good
  • a monochrome conversion should be a general feature of GD (or rather libgd), since it may be useful for other image formats as well (e.g. PNG)
  • the implemented monochrome conversion is very simplistic, and does not fit to gdImageGrayScale()'s algorithm
  • WBMP might be considered obsolete nowadays

Proposal

Therefore, this RFC proposes to:

  1. fix the documentation according to the current implementation
  2. remove superfluous code (most notably _php_image_bw_convert())
  3. deprecate image2wbmp()
  4. finally remove image2wbmp() altogether

Backward Incompatible Changes

After the deprecation, each call to image2wbmp() would issue a deprecated warning. After the removal, each call to image2wbmp() would raise a fatal error.

Proposed PHP Version(s)

Item (1) to (3) of the proposal should target next PHP 7.y (i.e. PHP 7.3), while item (4) (i.e. the actual removal) should target next PHP x (supposedly PHP 8).

Voting

A single vote will be held to decide whether to implement the proposal. This vote will require a 2/3 supermajority. Voting started on 2018-05-26, and ended on 2018-06-09 21:00 UTC.

Vote: Deprecate and Remove image2wbmp() — Yes: 14 · No: 0 (closed)

Patches and Tests

A pull request regarding the deprecation is available.

Implementation

  1. Implemented in PHP 7.3 via http://git.php.net/?p=php-src.git;a=commit;h=3cbf594dfd0708dc36f1655c50e16fa963e61501
  2. doc fix
  3. Removed for PHP 8

References

1)Wireless Application Protocol Bitmap Format; not Windows Bitmap