WhichBrowser\Data\DeviceModels::cleanup PHP Method

cleanup() public static method

public static cleanup ( $s = '' )
    public static function cleanup($s = '')
    {
        // var_dump($s);
        $s = preg_replace('/^phone\\//', '', $s);
        $s = preg_replace('/^(\\/|; |;)/u', '', $s);
        $s = preg_replace('/\\/[^\\/]+$/u', '', $s);
        $s = preg_replace('/\\/[^\\/]+ Android\\/.*/u', '', $s);
        $s = preg_replace('/UCBrowser$/u', '', $s);
        $s = preg_replace('/(_TD|_LTE|_GPRS|_BLEU|_CMCC|_CMCC_TD|_CUCC)$/u', '', $s);
        $s = preg_replace('/(-BREW| MIDP).+$/u', '', $s);
        $s = preg_replace('/ AU-MIC.+$/u', '', $s);
        $s = preg_replace('/ (AU|UP)\\.Browser$/u', '', $s);
        $s = preg_replace('/_/u', ' ', $s);
        $s = preg_replace('/^\\*+/u', '', $s);
        $s = preg_replace('/^\\s+|\\s+$/u', '', $s);
        $s = preg_replace('/^De-Sensed /u', '', $s);
        $s = preg_replace('/^Full JellyBean( on )?/u', '', $s);
        $s = preg_replace('/^(Android|Generic Android|Baidu Yi|Buildroid|Gingerbread|ICS AOSP|AOSPA?|tita) (on |for )/u', '', $s);
        $s = preg_replace('/^Full (AOSP on |Android on |Base for |Cappuccino on |MIPS Android on |Webdroid on |JellyBean on |Android)/u', '', $s);
        $s = preg_replace('/^Acer( |-)?/iu', '', $s);
        $s = preg_replace('/^Iconia( Tab)? /u', '', $s);
        $s = preg_replace('/^ASUS ?/u', '', $s);
        $s = preg_replace('/^Ainol /u', '', $s);
        $s = preg_replace('/^Coolpad-?Coolpad/iu', 'Coolpad', $s);
        $s = preg_replace('/^Coolpad ?/iu', 'Coolpad ', $s);
        $s = preg_replace('/^Alcatel[_ ]OT[_-](.*)/iu', 'One Touch $1', $s);
        $s = preg_replace('/^ALCATEL /u', '', $s);
        $s = preg_replace('/^YL-/u', '', $s);
        $s = preg_replace('/^TY-K[_\\- ]Touch/iu', 'K-Touch', $s);
        $s = preg_replace('/^K-Touch[_\\-]/u', 'K-Touch ', $s);
        $s = preg_replace('/^Novo7 ?/iu', 'Novo7 ', $s);
        $s = preg_replace('/^HW-HUAWEI/u', 'HUAWEI', $s);
        $s = preg_replace('/^Huawei[ -]/iu', 'Huawei ', $s);
        $s = preg_replace('/^SAMSUNG SAMSUNG-/iu', '', $s);
        $s = preg_replace('/^SAMSUNG[ -]/iu', '', $s);
        $s = preg_replace('/^(Sony ?Ericsson|Sony)/u', '', $s);
        $s = preg_replace('/^(Lenovo Lenovo|LNV-Lenovo|LENOVO-Lenovo)/u', 'Lenovo', $s);
        $s = preg_replace('/^Lenovo-/u', 'Lenovo', $s);
        $s = preg_replace('/^Lenovo/u', 'Lenovo ', $s);
        $s = preg_replace('/^ZTE-/u', 'ZTE ', $s);
        $s = preg_replace('/^(LG)[ _\\/]/u', '$1-', $s);
        $s = preg_replace('/^(HTC.+)\\s[v|V][0-9.]+$/u', '$1', $s);
        $s = preg_replace('/^(HTC)[-\\/]/u', '$1 ', $s);
        $s = preg_replace('/^(HTC)([A-Z][0-9][0-9][0-9])/u', '$1 $2', $s);
        $s = preg_replace('/^(Motorola MOT-|MOT-|Motorola[\\s|-])/u', '', $s);
        $s = preg_replace('/^Moto([^\\s])/u', '$1', $s);
        $s = preg_replace('/^(UTStar-)/u', '', $s);
        $s = preg_replace('/^VZW:/iu', '', $s);
        $s = preg_replace('/^(Swisscom|Vodafone)\\/1.0\\//iu', '', $s);
        $s = preg_replace('/-?(orange(-ls)?|vodafone|bouygues|parrot|Kust)$/iu', '', $s);
        $s = preg_replace('/[ -](Mozilla|Opera|Obigo|Java|PPC)$/iu', '', $s);
        $s = preg_replace('/ ?Build$/iu', '', $s);
        $s = preg_replace('/ \\(compatible$/iu', '', $s);
        $s = preg_replace('/http:\\/\\/.+$/iu', '', $s);
        $s = preg_replace('/^\\s+|\\s+$/u', '', $s);
        $s = preg_replace('/\\s+/u', ' ', $s);
        return $s;
    }

Usage Example

Esempio n. 1
0
 /**
  * Identify the manufacturer and model based on a pattern
  *
  * @param   string      $pattern   The regular expression that defines the group that matches the model
  * @param   string      $subject   The string the regular expression is matched with
  * @param   array|null  $defaults  An optional array of properties to set together
  *
  * @return string
  */
 public function identifyModel($pattern, $subject, $defaults = [])
 {
     if (preg_match($pattern, $subject, $match)) {
         $this->manufacturer = !empty($defaults['manufacturer']) ? $defaults['manufacturer'] : null;
         $this->model = Data\DeviceModels::cleanup($match[1]);
         $this->identifier = preg_replace('/ (Mozilla|Opera|Obigo|Build|Java|PPC)$/iu', '', $match[0]);
         if (isset($defaults['model'])) {
             if (is_callable($defaults['model'])) {
                 $this->model = call_user_func($defaults['model'], $this->model);
             } else {
                 $this->model = $defaults['model'];
             }
         }
         $this->generic = false;
         $this->identified |= Constants\Id::PATTERN;
         if (!empty($defaults['type'])) {
             $this->type = $defaults['type'];
         }
     }
 }
All Usage Examples Of WhichBrowser\Data\DeviceModels::cleanup