php7
Expect backward-compatible enhancements to the old assert()
function. Expectations allow zero-cost assertions in production code and provide the ability to throw custom exceptions when assertions fail. assert()
is not a language construct where the first argument is a comparison of an expression string
or boolean
for testing.
Configuration directive assert()
Default value | Possible values | |
1 | 1 \- Generate and execute code (development mode ) 0 \- Generate code, but skip it at runtime -1 \- Do not generate code (production mode) | |
0 | 1 \- Throws the exception object provided when the assertion fails, or throws a new AssertionError object if no exception is provided. . 0 \- Use or generate a Throwable as above, but only generate a warning based on that object instead of throwing it (compatible with PHP 5 behavior) |
PHP 5, it must be a
string to be evaluated or a
boolean value to be tested. In
PHP 7, this can also be any expression that returns a value that will be executed and the result used to indicate whether the assertion succeeded or failed.
PHP 7, the second parameter can be a
Throwable object instead of a descriptive string, in which case This is the object that will be thrown if the assertion fails and the
assert.exception configuration directive is enabled.
FALSE, otherwise it returns
TRUE .
<?php ini_set('assert.exception', 1); class CustomError extends AssertionError {} assert(false, new CustomError('Custom Error Message!')); ?>
Fatal error: Uncaught CustomError: Custom Error Message! in...
php video tutorial php7 tutorial
The above is the detailed content of How to properly use PHP7 expectations. For more information, please follow other related articles on the PHP Chinese website!