Login
Register
You are here:
start
›
rfc
›
tagged_unions
rfc:tagged_unions
Sitemap
This is a sitemap over all available pages ordered by
namespaces
.
adopt-code-of-conduct
doc
gsoc
ideas
indication_of_interest
internals
issuetracker
licenses
notrfc
p
pear
pecl
php-gtk
playground
pplusplus
qa
release
rfc
analysis
apxs-loadmodule
closures
counterargument
datetime_and_daylight_saving_time
default_expression
dvcs
fpm
functional-elements
peclversioning
php8
property-hooks
propertygetsetsyntax-as-implemented
releaseprocess
remove_zend_api
session-oo
shortsyntaxforarrays
socketactivation
spl-improvements
splclassloader
strict_operators
string-size_t
voting
weakreferences
2d_matrix_operations
64bit-integer-type
abolish-narrow-margins
abolish-short-votes
abstract_final_class
abstract_syntax_tree
abstract_trait_method_validation
access_scope_from_magic_accessors
add_bcdivmod_to_bcmath
add_str_begin_and_end_functions
add_str_starts_with_and_ends_with_functions
add_validate_functions_to_filter
add-cms-support
add-sha256-function
adding_bcround_bcfloor_bcceil_to_bcmath
additional_soft_reservations_for_php7
additional-context-in-pcntl-signal-handler
additional-splat-usage
adopt-code-of-conduct
adts
aliases_by_reflection
allow_casting_closures_into_single-method_interface_implementations
allow_int_args_to_bcmath_function
allow_multiple_simultaneous_syslog_connections
allow_null
allow_url_include
allow-abstract-function-override
allow-closures-to-declare-interfaces-they-implement
allow-constant-override-consistently
allow-constant-override
allow-void-variance
alpanumeric_decrement
alternative_callback_syntax
alternative-closure-use-syntax
altmbstring
always_enable_json
annotations_v2
annotations-in-docblock
annotations
anonymous_catch
anonymous_classes_v2
anonymous_classes
any_all_on_iterable_straw_poll_namespace
any_all_on_iterable_straw_poll
any_all_on_iterable
any_and_on_iterable
apache_tail_request
apprise_on_invalid_arithmetic_operands
apxs-loadmodule
arbitrary_expression_interpolation
arbitrary_static_variable_initializers
arbitrary_string_interpolation
argon2_password_hash_enhancements
argon2_password_hash
argument_unpacking
arithmetic_operator_type_checks
array_change_keys
array_column_results_grouping
array_column
array_count_handlers
array_delete
array_find
array_group
array_key_first_last_index
array_key_first_last
array_part
array_reindex
array_unpacking_string_keys
array-sort-return-array
array-to-string
arrayiterator-improvements
arrayof
arrow_function_preference
arrow_functions_v2
arrow_functions
assert-string-eval-cleanup
assignment-overloading
ast_based_parsing_compilation_process
asymmetric-visibility-v2
asymmetric-visibility
async_signals
attribute_amendments
attributes_v2
attributes-on-constants
attributes
auto-capture-closure
auto-capture-lambda
auto-implement_stringable_for_string_backed_enums
autoboxing
autodefine
autofunc
autoload_classmap
autoload_include
automatic_csrf_protection
automatic_get_set_methods
automatic_property_initialization
autovivification_false
backslashnamespaces
backwards_compatibility
bare_name_array_dereference
bare_name_array_literal
bare_name_arrays
base_convert_improvements
base-convert
basic_scalar_types
batch_use_declarations
bcrypt_cost_2023
better_benchmarks
better_type_names_for_int64
bigint
binary_string_comparison
binary_string_deprecation
binnotation4ints
boxingandunboxing
build-openssl-by-default
builtincrypt
builtinwebserver
cachediterable_straw_poll
cachediterable
callable-interfaces
callable-types
callable
callableconstructors
calls_in_constant_expressions_poll
calls_in_constant_expressions
calltimebyref
case_insensitive_constant_deprecation
case-sensitivity
catchable-call-to-member-of-non-object
chaining_comparison
change_required_votes_to_two_thirds
change_the_edge_case_of_round
change-terminology-to-allowlist-and-blocklist
change-terminology-to-excludelist
changes_to_include_and_require
check_and_set
checkdnsrr-default-type
clamp
class_and_interface_name_types
class_casting_to_scalar
class_const_visibility
class_name_literal_on_object
class_name_scalars
class_properties_initialization
class-like_primitive_types
class-naming-acronyms
class-naming
clear-process
cli_process_title
cli_server_http2
cli-strict
clone_with
closure_apply
closure_self_reference
closurefromcallable
closures_in_const_expr
closures
code_free_constructor
code_optimizations
coercive_sth
collections
combined-comparison-operator
compact-object-property-assignment
compact
comparable
comparator_interface
complete_callstatc_magic
comprehensions
concatenation_precedence
conditional_break_continue_return
consistent_callables
consistent_function_names
consistent_type_errors
consistent-names
const_scalar_expressions
const_scalar_expressions2
const_scalar_exprs
constant_redefinition
constants_in_traits
constdereference
constructor_promotion
constructor_return_type
constructor-promotion
container-offset-behaviour
context_sensitive_lexer
continue_ob
continue_on_switch_deprecation
convert_numeric_keys_in_object_array_casts
cookie_max-age
core-autoloading
core-function-exceptions
correctly_name_the_rounding_mode_and_make_it_an_enum
counting_non_countables
covariant-returns-and-contravariant-parameters
crypt_function_salt
csprng_exceptions
csrandombytes
curl_http2_push
curl_setopt_strict_types
curl_share_persistence_improvement
curl_share_persistence
curl_user_agent
curl-file-upload
curl-oop
curl-url-api
curl-wrappers-removal-rfc
currying
custom_object_serialization
customfactories
cyclic-replace
data-classes
dataclass
date_improvements
date.timezone_warning_removal
datetime_and_daylight_saving_time
datetime_tostring
datetime-exceptions
datetime-tostring
dbc
dbc2
debug_backtrace_depth
debug-info
debugging_pdo_prepared_statement_emulation_v2
debugging_pdo_prepared_statement_emulation
debugoptions
declare_vars
decode_html
dedicated_stream_bucket
default_ctor
default_encoding
default_expression
default-session-strict-mode
define-negative-execution-time
deprecate_curly_braces_array_access
deprecate_dollar_brace_string_interpolation
deprecate_dynamic_properties
deprecate_functions_with_overloaded_signatures
deprecate_ini_set_get_aliases
deprecate_mb_ereg_replace_eval_option
deprecate_mcrypt_rand
deprecate_null_to_scalar_internal_arg
deprecate_partially_supported_callables
deprecate_pdo_null
deprecate_php_short_tags_v2
deprecate_php_short_tags
deprecate_ticks
deprecate-and-remove-ext-interbase
deprecate-and-remove-ext-wddx
deprecate-and-remove-intl_idna_variant_2003
deprecate-backtick-operator-v2
deprecate-backtick-operator
deprecate-bareword-strings
deprecate-boolean-string-coercion
deprecate-get-post-sessions
deprecate-implicitly-nullable-types
deprecate-inconsistent-cast-keywords
deprecate-ini-functions
deprecate-json_encode-nonserializable
deprecate-pear-include-composer
deprecate-png-jpeg-2wbmp
deprecate-uniqid
deprecate-unuseful-crypt-constants
deprecated_attribute
deprecated-modifier
deprecations_php_7_1
deprecations_php_7_2
deprecations_php_7_3
deprecations_php_7_4
deprecations_php_8_0
deprecations_php_8_1
deprecations_php_8_2
deprecations_php_8_3
deprecations_php_8_4
deprecations_php_8_5
deque_straw_poll
deque
destructuring_coalesce
direct-execution-opcode
directory-opaque-object
disallow-multiple-constructor-calls
distrust-sha1-certificates
dnf_types
docblockparser
dom_additions_84
dom_living_standard_api
domdocument_html5_parser
doxygen
driver-specific-pdo-param-types
drop_sql.safe_mode
drop-datetimeinterface
dtrace
dvcs
dvcsmigration
dynamic_class_constant_fetch
e-user-deprecated-warning
easy_userland_csprng
empty_function
empty_isset_exprs
encapsulation
engine_exceptions_for_php7
engine_exceptions
engine_warnings
enhanced_error_handling
enum_allow_static_properties
enum_v2
enum
enumerations_and_adts
enumerations
enumset
error_backtraces
error_handler_callback_parameters_passed_by_reference
error_reporting_e_notice
error-formatting-for-developers
error-optimizations
errors_as_exceptions
escaper
escaping_operator
exception_bt_provide_object
exit-as-function
expectations
experimental
explicit_octal_notation
explicit_send_by_ref
extdep
extended-string-types-for-pdo
extension_prepend_files
extensions_load_order
extensionsiberia
fallback-to-root-scope-deprecation
fast_zpp
fcallfcall
fetch_property_in_const_expressions
ffi-non-static-deprecated
ffi
fiber
fibers
file-descriptor-function
final_anonymous_classes
final_by_default_anonymous_classes
final_class_const
final_properties
finally
first_class_callable_syntax
fix_list_behavior_inconsistency
fix_up_bcmath_number_class
flexible_heredoc_nowdoc_indentation
flexible_heredoc_nowdoc_syntaxes
forbid_dynamic_scope_introspection
forbid_null_this_in_methods
foreach_unwrap_ref
foreach_void
foreach-non-scalar-keys
foreachlist
fpm_change_hat
fpm
free-json-parser
friend-classes
fsync_function
function_autoloading_v2
function_autoloading
function_autoloading2
function_autoloading4
function_referencing
function-composition
functional-elements
functional-interfaces
functionarraydereferencing
functiongetentropy
gc_fn_pointer
gd_image_export_import_pixels
generator-delegation
generator-return-expressions
generators
generic-arrays
generics
get_class_disallow_null_parameter
get_debug_type
get_declared_enums
get-random
github_issues
github-pr
glob_streamwrapper_support
global_function_parser_directive
global_login
gmp_number
gmp-final
gmp-floating-point
google_groups
grapheme_levenshtein
grapheme_str_split
grisu3-strtod
group_use_declarations
guard_statement
hash_pbkdf2
hash-context.as-resource
hash-functions-empty-key-warning
hash.context.oop
hashkey
heredoc-scanner-loosening
heredoc-with-double-quotes
hook_improvements
horizontalreuse
howto
http-interface
http-last-response-headers
ifsetor
image2wbmp
imagettf_deprecation
immutability
implement_sqlite_openblob_in_pdo
implement-strrstr-for-consistency
implicit_move_optimisation
implicit-float-int-deprecate
improve_callbacks_dom_and_xsl
improve_hash_hkdf_parameter
improve_hash_hkdf_pramater
improve_mysqli
improve_predictable_prng_random
improve_unserialize_error_handling
improve-openssl-random-pseudo-bytes
improved_error_callback_mechanism
improved-parser-error-message
improved-tls-constants
improved-tls-defaults
in_operator
include_cleanup
incompat_ctx
inconsistent-behaviors
increment_decrement_fixes
indirect-method-call-by-array-var
inheritance_private_methods
instance_counter
instance-method-call
instanceof_improvements
intdiv
integer_semantics
integer-rounding
interface-default-methods
internal_constructor_behaviour
internal_function_return_types
internal_method_return_types
internal_serialize_api
intersection_types
intl_ubidi
intl.char
intl.charset-detector
intl.timezone.get-windows-id
intldatetimepatterngenerator
introduce_design_by_contract
introduce-type-affinity
invalid_strings_in_arithmetic
invokable
is_json
is_list
is_literal
is_not_instanceof
is_trusted
is_valid_utf8
is-countable
isreadable-iswriteable
isset_ternary
isset-set-operator
iterable_to_array-and-iterable_count
iterable-stdclass
iterable
iteration-tools
iterator_chaining
iterator_xyz_accept_array
jenkins
jit_config_defaults
jit-ir
jit
json_encode_decode_errors
json_encode_indentation
json_numeric_as_string
json_preserve_fractional_part
json_throw_on_error
json_validate
jsonable
jsond
jsonserializable
karma-ml
keywords_as_identifiers
kill_real
kill-csv-escaping
language-constructs-syntax-changes
lazy-objects
ldap_controls
ldap_exop
ldap_modify_batch
lemon
lexical-anon
libsodium
linecontrol
linking_in_stream_wrappers
list_assoc_unique
list_default_value
list_keys
list_reference_assignment
list-syntax-trailing-commas
literal_string
load-ext-by-name
local_variable_types
locale_independent_float_to_string
locked-classes
logicalshiftoperator
loop_default
loop_else
loop_or
lsb_parentself_forwarding
lsp_errors
magic-methods-signature
magicquotes_finale
magicquotes
make_ctor_ret_void
make-reflection-setaccessible-no-op
managinglisttraffic
marking_overriden_methods
match_blocks
match_expression_v2
match_expression
max_execution_wall_time
mb_levenshtein
mb_str_pad
mb_str_split
mb_trim_change_characters
mb_trim
mb_ucfirst
mcrypt-viking-funeral
misc_variable_functions
mixed_type_v2
mixed_vs_untyped_properties
mixed-typehint
mixin
moduleapi-inspection
multibyte_char_handling
multiple-catch
my_rfc
mysql_deprecation
mysqli_bind_in_execute
mysqli_default_errmode
mysqli_execute_parameters
mysqli_execute_query
mysqli_fetch_column
mysqli_support_for_libmysql
mysqlnd_localhost_override
named_parameter_alias_attribute
named_params
namedparameters
nameof
namespace_scoped_declares
namespace-importing-with-from
namespace-visibility
namespacecurlies
namespaced_names_as_token
namespaceissues
namespaceref
namespaceresolution
namespaces_encapsulation
namespaces_in_bundled_extensions
namespaces-for-internal-classes
namespaces-in-core
namespaces
namespaceseparator
native_regular_expressions
native-tls
negative_array_index
negative-index-support
negative-string-offsets
nested_classes
never_for_parameter_types
new_in_initializers
new_rounding_modes_to_round_function
new_without_parentheses
new-curl-error-functions
new-output-api
newinis
nikita_popov
non_coercing_array_keys_in_strict_mode
non_nullable_property_checks
non-capturing_catches
nonbreakabletraits
nophptags
noreturn_type
normalize_inc_dec
normalize-array-auto-increment-on-copy-on-write
not_serializable
notice-for-non-valid-array-container
null_coalesce_equal_operator
null_coercion_consistency
null-false-standalone-types
null-propagation
null-standalone-type
nullable_intersection_types
nullable_return_types
nullable_returns
nullable_typehints
nullable_types
nullable-casting
nullsafe_calls
nullsafe_operator
number_format_negative_zero
number_format_separator
numeric_literal_separator
object_cast_magic
object_cast_to_types
object_keys_in_arrays
object_scope_prng
object-comparison
object-initializer
object-model-improvements
object-typehint
objectarrayliterals
objects-can-be-falsifiable
objkey
octal.overload-checking
ommit-double-slash-in-user-stream-wrapper-uri
on_demand_name_mangling
opcache.no_cache
open_release_manifest
openssl_aead
openssl.bignum
operator_functions
operator_overloading_gmp
operator_overrides_lite
operator-overloading
opt_in_dom_spec_compliance
optimizerplus
optional_constructor_body
optional-t-function
p-plus-plus
pack_unpack_64bit_formats
parameter_type_casting_hints
parameter-no-type-variance
parse_request_body_in_json
parse_str_alternative
parser-extension-api
partial_function_application
partially-supported-callables-expand-deprecation-notices
pass_scope_to_magic_accessors
password_hash_spec
password_hash
password_registry
pattern-matching
pcre2-migration
pdo_default_errmode
pdo_driver_specific_parsers
pdo_driver_specific_subclasses
pdo_escape_placeholders
pdo_float_type
pdo-mysql-get-warning-count
pdonotices
pdov1
pecl_http
peclversioning
performanceimprovements
permanent_hash_ext
phar_stop_autoloading_metadata
phase_out_serializable
php_engine_constant
php_ini_bcmath_default
php_license_update
php_namespace_policy
php_native_interface
php_technical_committee
php-array-api
php-namespace-in-core
php6-rethink
php6
php7_57_roadmap
php7_foreach
php7timeline
php8_assertions
php8
php53eol
php56timeline
php57
php71-crypto
phpdbg
phpnet-analytics
phpng
phpng64
phpp
phpvcs
pickle
pipe-operator-v2
pipe-operator
platform_requirement_declares
policy-repository
poll_switch_expression
pow-operator
precise_float_value
precise_session_management
preg_extract
preg_replace_callback_array
preload
prevent_disruptions_of_conversations
println
process_object_name
promote_php_foundation
proper-range-semantics
property_accessors
property_type_hints
property_write_visibility
property-capture
property-hooks
propertygetsetsyntax-alternative-typehinting-syntax
propertygetsetsyntax-as-implemented
propertygetsetsyntax-implementation-details
propertygetsetsyntax-v1.1
propertygetsetsyntax-v1.2
propertygetsetsyntax
protectedlookup
protocol_type_hinting
prototype_checks
prototypecasting
pure-intersection-types
raising_zero_to_power_of_negative_number
random_ext
random_extension_improvement
random_migration
random-function-exceptions
randomizer_additions
range_checks_for_64_bit
raw-identifiers
readable_var_representation
readline_interactive_shell_result_function_straw_poll
readline_interactive_shell_result_function
readonly_amendments
readonly_and_immutable_properties
readonly_classes
readonly_hooks
readonly_properties_v2
readonly_properties
reclassify_e_strict
records
redact_parameters_in_back_traces
reference_reflection
reflection_doccomment_annotations
reflectionparameter-getclassname
reflectionparameter.typehint
reflectiontypeimprovements
release_cycle_update
release-md5-deprecation
releaseprocess
releaseprocessalternatives
removal_of_dead_sapis_and_exts
removal_of_dead_sapis
removal-of-deprecated-features
remove_alternative_php_tags
remove_deprecated_functionality_in_php7
remove_disable_classes
remove_hex_support_in_numeric_strings
remove_object_auto_vivification
remove_php4_constructors
remove_preg_replace_eval_modifier
remove_re2c_generated_files
remove_utf_8_decode_encode
remove_utf8_decode_and_utf8_encode
remove_zend_api
rename-double-colon-token
renamed_parameters
replace_parse_url
request_response
request-tempnam
reserve_even_more_types_in_php_7
reserve_keywords_in_php_8
reserve_more_types_in_php_7
reserve_primitives
resolve_symlinks
resource_to_object_conversion
resource_typehint
restrict_globals_usage
retry-keyword
return_types
returntypehint
returntypehint2
returntypehinting
review-discussion-period
revisit-trailing-comma-function-args
rfc.third-party-editing
rfc.voting-threshold
rfc1867-non-post
ripples
rng_extension
rng_fixes
rounding
runtimecache
safe_cast
same-site-cookie
same-site-parameter
saner-array-sum-product
saner-inc-dec-operators
saner-numeric-strings
scalar_extensions
scalar_type_hinting_with_cast
scalar_type_hints_v_0_1
scalar_type_hints_v5
scalar_type_hints
scalar-pseudo-type
script_only_include
sealed_classes
second_arg_to_preg_callback
secure_serialization
secure_unserialize
secure-html-escape
secure-session-options-by-default
security-classification
sendrecvmsg
session_regenerate_id
session_upload_progress
session-create-id
session-gc
session-id-without-hashing
session-lock-ini
session-oo
session-read_only-lazy_write
session-use-strict-mode
session.user.return-value
shell_exec_result_code_param
short_closures
short_list_syntax
short_ternary_equal_operator
short-closures
short-functions
short-match
short-syntax-for-anonymous-function
short-syntax-for-anonymous-functions
short-syntax-for-anonymus-functions
shortags
shorter_attribute_syntax_change
shorter_attribute_syntax
shortsyntaxforarrays
shortsyntaxforfunctions
simple-annotations
simplified_named_params
site_voting_poll
size_t_and_int64_next
size_t_and_int64
skipparams
sleep_function_float_support
slim_post_data
small_features
soap_get_location
socket_getaddrinfo
socketactivation
sodium.argon.hash
sorting_enum
source_files_without_opening_tag
sourcemaps
spl-improvements
spl-namespace
splclassloader
splweaktypehintingwithautoboxing
spread_operator_for_array
sql_injection_protection
sqlite3_exceptions
stable_sorting
stack-frame-class
stackable_error_handler
static_class_constructor
static_class
static_constructor
static_return_type
static_variable_inheritance
static-aviz
static-classes
stochastic_rounding_mode
str_contains
streamline-phar-api
streammetadata
streams-is-cacheable
streamwrapper-factory
strict_argcount
strict_operators
strict_return_types
strict_sessions
stricter_implicit_boolean_coercions
string_to_number_comparison
string-bitwise-shifts
stringable
strncmpnegativelen
strtolower-ascii
structs-v2
structs
structural-typing-for-closures
structured_object_notation
support_object_type_in_bcmath
suppressed_exceptions
svnexternals
switch_expression
switch-expression-and-statement-improvement
switch-expression
switch.default.multiple
sync
syntax-to-capture-variables-when-declaring-anonymous-classes
tagged_unions
taint
template
tempnam-suffix-v2
tempnam-suffix
ternary_associativity
the_naming_convention_for_internal_functions_arguments
third-party-code
this_return_type
this_var
throw_error_in_extensions
throw_expression
throwable_string_param_max_len
throwable-code-generalization
throwable-interface
throwable
timing_attack
timing_safe_encoding
tls-peer-verification
tls
to-array
token_as_object
token-get-always-tokens
too_few_args
tostring_exceptions
trailing_comma_in_closure_use_list
trailing_comma_in_parameter_list
trailing_whitespace_numerics
trailing-comma-function-args
trailing-comma-function-calls
trailing-commas-function-calls
traits-with-interfaces
traits
traitsmodifications
travis_ci
treat_enum_instances_as_values
true-nested-function-support
true-type
tsrmls-fetch-reduction
typecast_array_desctructuring
typechecking
typecheckingparseronly
typecheckingstrictandweak
typecheckingstrictonly
typecheckingweak
typed_class_constants
typed_constants
typed_properties_v2
typed-aliases
typed-properties-v2
typed-properties
typedef
typehint_array_desctructuring
typehint
typesafe-callable
uconverter
umaintained_extensions
unary_null_coalescing_operator
unbundle_imap_pspell_oci8
unbundle_recode
unbundle_xmlprc
unbunle-unmaintained-extensions-php8
undefined_property_error_promotion
undefined_variable_error_promotion
undeterministic_exceptions
unicode_escape
unicode_text_processing
unified-crypto-source
uniform_variable_syntax
union_types_v2
union_types
uniqid
unserialize_warn_on_trailing_data
unset_bool
url_dots
url_parsing_api
url-opcode-cache
use_function
use_global_elements
use-php_mt_rand
use-static-function
useas
user_defined_operator_overloads
user_defined_session_serializer
userspace_operator_overloading
ustring
uuid
var_deprecation
var_info
var_type
var-export-array-syntax
variable_syntax_tweaks
variadic_empty
variadics
vector
void_return_type
voting_who
voting
voting2017
voting2019
warn-resource-to-string
wddx-deprecate-class-instance-deserialization
weak_maps
weakreferences
weakrefs
web-and-doc-use-not-endorsement
who_can_vote
working_with_substrings
write_once_properties
xml_option_parse_huge
xmlreader_writer_streams
yescrypt
zend-vm-pause-api
zendsignals
zpp_fail_on_overflow
zpp_improv
zpp-conversion-rules
summits
systems
sytems
todo
user
usergroups
vcs
web
wiki
wiki.php.net
canyouvote
conferences
corementorship
cve
doc
email_etiquette_for_people_new_to_php_internals
extensions-unmaintained
gitstats_02_19
gitstats_09_17
gsoc
ideas
indication_of_interest
internals
issuetracker
licenses
pear
pecl
php-7.1-ideas
php-gtk
phpng-int
phpng-upgrading
phpng
platforms
qa
redefine_constants_exception_strawpoll
rfc-index
rfc
security_fixes
security
start
summits
svnmigration
systems
temporary_location_for_draft_documentation
todo
usergroups
vcs
voting
web
xfail_poll
zts-improvement
rfc/tagged_unions.txt
· Last modified: 2024/07/16 14:12 by
crell
Page Tools
Show page
Old revisions
Backlinks
Back to top