-
Notifications
You must be signed in to change notification settings - Fork 8k
Open
Description
Description
The following code:
<?php
try {
(new Spoofchecker())->setRestrictionLevel( -2 );
} catch ( \Throwable $e ) {
// Show the error message
echo $e->getMessage() . "\n\n";
}
$cases = [
'Spoofchecker::ASCII',
'Spoofchecker::SINGLE_SCRIPT_RESTRICTIVE',
'Spoofchecker::SINGLE_HIGHLY_RESTRICTIVE',
'Spoofchecker::SINGLE_MODERATELY_RESTRICTIVE',
'Spoofchecker::SINGLE_MINIMALLY_RESTRICTIVE',
'Spoofchecker::UNRESTRICTIVE',
];
foreach ( $cases as $case ) {
if ( defined( $case ) ) {
echo "$case - is defined\n";
} else {
echo "$case - NOT defined\n";
}
}Resulted in this output:
Spoofchecker::setRestrictionLevel(): Argument #1 ($level) must be one of Spoofchecker::ASCII, Spoofchecker::SINGLE_SCRIPT_RESTRICTIVE, Spoofchecker::SINGLE_HIGHLY_RESTRICTIVE, Spoofchecker::SINGLE_MODERATELY_RESTRICTIVE, Spoofchecker::SINGLE_MINIMALLY_RESTRICTIVE, or Spoofchecker::UNRESTRICTIVE
Spoofchecker::ASCII - is defined
Spoofchecker::SINGLE_SCRIPT_RESTRICTIVE - is defined
Spoofchecker::SINGLE_HIGHLY_RESTRICTIVE - NOT defined
Spoofchecker::SINGLE_MODERATELY_RESTRICTIVE - NOT defined
Spoofchecker::SINGLE_MINIMALLY_RESTRICTIVE - NOT defined
Spoofchecker::UNRESTRICTIVE - is defined
But I expected this output instead:
- ValueError message only suggests class constants that exist
PHP Version
8.3+
Operating System
No response