code: public static function cpu()
      {
          $cpu = new \StdClass();
          
          if(false !== ($data = @file('/proc/cpuinfo'))){
              
              $data = implode("", $data);
              
              // processing aka pre matching data
              @preg_match_all('/model\s+name\s{0,}\:+\s{0,}([\w\s\)\(\@.-]+)([\r\n]+)/s', $data, $model);
              @preg_match_all('/cpu\s+MHz\s{0,}\:+\s{0,}([\d\.]+)[\r\n]+/', $data, $mhz);
              @preg_match_all('/cache\s+size\s{0,}\:+\s{0,}([\d\.]+\s{0,}[A-Z]+[\r\n]+)/', $data, $cache);
              @preg_match_all('/bogomips\s{0,}\:+\s{0,}([\d\.]+)[\r\n]+/', $data, $bogomips);
              
          }
          
          if (false !== is_array($model[1])){
              
              $cpu->num = sizeof($model[1]);
              $x1 = '';
      		if($cpu->num != 1){
      		    $x1 = ' ×'.$cpu->num;
      		}
      		
      		$cpu->frequency = $mhz[1][0];
      		$cpu->cache2    = $cache[1][0];
      		$cpu->bogomips  = $bogomips[1][0];
      		$cpu->model     = $model[1][0];
      		$cpu->summary   = 'Model: '.$model[1][0].' | Frequency: '.$mhz[1][0].' | Secondary cache: '.$cache[1][0].' | Bogomips: '.$bogomips[1][0].' '.$x1;
      		
      	}
      	
      	return $cpu;
      }
docs: Server cpu
  @return \StdClass