CRM_Utils_Type::validatePhpType - Helper to validate PHP type expressions #20923
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Adds a helper for evaluating the type expressions that appear in PHP docblocks. This is a building block for other code that uses docblocks for validation.
Technical Details
Here are a few examples:
The default mode of operation is strict. In strict usage, string
"123"
is not an instance ofint
, even though it looks like123
.Optionally, you may use a non-strict mode. In this case, string
"123"
and int123
are interchangeable. (Both"123"
and123
satisfy both type-constraints forstring
andint
.) This may be more appropriate if you are exchanging data through softly typed interfaces (e.g. PHP-MySQL, PHP-XML, APIv{$n}).