3v4l.org

run code in 300+ PHP versions simultaneously
<?php $password = 'MyPassword'; $isLength = false; $validations = [ 'NUMERIC' => false, 'AL_LOWER' => false, 'AL_UPPER' => false, 'SPECIAL' => false ]; if (strlen($password) >= 8) { $isLength = true; } preg_match_all('/([0-9]+)/', $password, $validations['NUMERIC']); preg_match_all('/([a-z]+)/', $password, $validations['AL_LOWER']); preg_match_all('/([A-Z]+)/', $password, $validations['AL_UPPER']); preg_match_all('/([!@#$%^&*.,\[\]\-_]+)/', $password, $validations['SPECIAL']); echo "VALIDATIONS\r\n"; print_r($validations);echo "\r\n";echo "\r\n"; //array_filter($validations); $result = array_map('array_filter', $validations); echo "RESULT 1\r\n"; print_r($result);echo "\r\n"; $count = array_map('array_filter', $result); $count = array_map('array_filter', $count); echo "RESULT 2\r\n"; print_r($count);echo "\r\n"; $countSum = array_sum($count); echo "\r\n";echo "\r\n";echo "\r\n"; print_r($result); // print_r(count($validations)); print_r(count($count)); print_r($countSum);
Output for 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
VALIDATIONS Array ( [NUMERIC] => Array ( [0] => Array ( ) [1] => Array ( ) ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( [0] => Array ( ) [1] => Array ( ) ) ) RESULT 1 Array ( [NUMERIC] => Array ( ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( ) ) RESULT 2 Array ( [NUMERIC] => Array ( ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( ) ) Warning: array_sum(): Addition is not supported on type array in /in/erDji on line 37 Warning: array_sum(): Addition is not supported on type array in /in/erDji on line 37 Warning: array_sum(): Addition is not supported on type array in /in/erDji on line 37 Warning: array_sum(): Addition is not supported on type array in /in/erDji on line 37 Array ( [NUMERIC] => Array ( ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( ) ) 40
Output for 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29
VALIDATIONS Array ( [NUMERIC] => Array ( [0] => Array ( ) [1] => Array ( ) ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( [0] => Array ( ) [1] => Array ( ) ) ) RESULT 1 Array ( [NUMERIC] => Array ( ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( ) ) RESULT 2 Array ( [NUMERIC] => Array ( ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( ) ) Array ( [NUMERIC] => Array ( ) [AL_LOWER] => Array ( [0] => Array ( [0] => y [1] => assword ) [1] => Array ( [0] => y [1] => assword ) ) [AL_UPPER] => Array ( [0] => Array ( [0] => M [1] => P ) [1] => Array ( [0] => M [1] => P ) ) [SPECIAL] => Array ( ) ) 40

preferences:
66.47 ms | 423 KiB | 5 Q