anyString() ); } elseif ( $prot == 'mailto:' ) { // domainpart of email adress only. do not add '.' $host = strtolower( implode( '.', array_reverse( explode( '.', $host ) ) ) ); $like = array( "$prot$host", $db->anyString() ); } else { $host = strtolower( implode( '.', array_reverse( explode( '.', $host ) ) ) ); if ( substr( $host, -1, 1 ) !== '.' ) { $host .= '.'; } $like = array( "$prot$host" ); if ( $subdomains ) { $like[] = $db->anyString(); } if ( !$subdomains || $path !== '/' ) { $like[] = $path; $like[] = $db->anyString(); } } return $like; } /** * Filters an array returned by makeLikeArray(), removing everything past first pattern placeholder. * * @param $arr array: array to filter * @return filtered array */ public static function keepOneWildcard( $arr ) { if( !is_array( $arr ) ) { return $arr; } foreach( $arr as $key => $value ) { if ( $value instanceof LikeMatch ) { return array_slice( $arr, 0, $key + 1 ); } } return $arr; } }