Example #1
0
 /**
  * Case-insensitive UTF-8 version of strstr. Returns all of input string
  * from the first occurrence of needle to the end. This is a UTF8-aware
  * version of [stristr](http://php.net/stristr).
  *
  *     $found = UTF8::stristr($str, $search);
  *
  * @author  Harry Fuecks <*****@*****.**>
  * @param   string  $str    input string
  * @param   string  $search needle
  * @return  string  matched substring if found
  * @return  FALSE   if the substring was not found
  */
 public static function wpstristr($str, $search)
 {
     if (UTF8::is_ascii($str) and UTF8::is_ascii($search)) {
         return stristr($str, $search);
     }
     if ($search == '') {
         return $str;
     }
     $str_lower = UTF8::wpstrtolower($str);
     $search_lower = UTF8::wpstrtolower($search);
     preg_match('/^(.*?)' . preg_quote($search_lower, '/') . '/s', $str_lower, $matches);
     if (isset($matches[1])) {
         return substr($str, strlen($matches[1]));
     }
     return FALSE;
 }