Take the State of PHP 2026 Survey →

Deprecate Inconsistent Cast Names View as Markdown

Inactive
Authors
Chris Wright daverandom@php.net
Date
2017-12-07
Version
1.0
Source
wiki.php.net/rfc/deprecate-inconsistent-cast-keywords

Discussions on the mailing list

No thread found. Threads are linked to an RFC when their first email links to the RFC page, or when the RFC page links to them.

RFC text

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

Introduction

Scalar type declarations use only a single name for each numeric type, but casts permit some variation. This RFC proposes to deprecate the variants that are not valid as type declarations for reasons of consistency.

Proposal

The following cast forms will emit E_DEPRECATED errors, with a schedule for removal to be agreed either during discussion of this RFC or in a subsequent RFC:

(integer) // use (int)
(boolean) // use (bool)
(double)  // use (float)
(real)    // use (float)

The main reason for this is to help ensure that code is consistent and obviously readable.

Backward Incompatible Changes

Any code which uses these cast forms will now emit E_DEPRECATED errors.

Proposed PHP Version(s)

PHP 7.3

Proposed Voting Choices

Yes/No, with a 2/3 majority required.

Patches and Tests

No implementation currently exists.

References

Links to external references, discussions or RFCs