Php/docs/function.assert-options
assert_options
(PHP 4, PHP 5, PHP 7)
assert_options — Set/get the various assert flags
Description
Set the various assert() control options or just query their current settings.
Note:
As of PHP 7.0.0, the use of assert_options() is discouraged in favor of setting and getting the
php.ini
directives zend.assertions and assert.exception with ini_set() and ini_get(), respectively.
Parameters
what
- {|
|+ Assert Options
! Option
! INI Setting
! Default value
! Description
|-
| ASSERT_ACTIVE
| assert.active
| 1
| enable assert() evaluation
|-
| ASSERT_WARNING
| assert.warning
| 1
| issue a PHP warning for each failed assertion
|-
| ASSERT_BAIL
| assert.bail
| 0
| terminate execution on failed assertions
|-
| ASSERT_QUIET_EVAL
| assert.quiet_eval
| 0
| disable error_reporting during assertion expression
evaluation
|-
| ASSERT_CALLBACK
| assert.callback
| (
NULL
) | Callback to call on failed assertions |} value
An optional new value for the option.
The callback function set via
ASSERT_CALLBACK
or assert.callback should have the following signature:assert_callback ( string
$file
, int$line
, string$assertion
[, string$description
] ) : void
Passing an empty string as value
resets the assert callback.
Return Values
Returns the original setting of any option or FALSE
on errors.
Examples
Example #1 assert_options() example
<?php// This is our function to handle // assert failuresfunction assert_failure($file, $line, $assertion, $message){ echo "The assertion $assertion in $file on line $line has failed: $message";}// This is our test functionfunction test_assert($parameter){ assert(is_bool($parameter));}// Set our assert optionsassert_options(ASSERT_ACTIVE, true);assert_options(ASSERT_BAIL, true);assert_options(ASSERT_WARNING, false);assert_options(ASSERT_CALLBACK, 'assert_failure');// Make an assert that would failtest_assert(1);// This is never reached due to ASSERT_BAIL // being trueecho 'Never reached';?>