/** * @covers Mobile_Detect::getMobileDetectionRulesExtended */ public function testRulesExtended() { $md = new Mobile_Detect(); $count = array_sum(array(count(Mobile_Detect::getPhoneDevices()), count(Mobile_Detect::getTabletDevices()), count(Mobile_Detect::getOperatingSystems()), count(Mobile_Detect::getBrowsers()), count(Mobile_Detect::getUtilities()))); $md->setDetectionType(Mobile_Detect::DETECTION_TYPE_EXTENDED); $rules = $md->getRules(); $this->assertEquals($count, count($rules)); }
* Use the resulting JSON export file in other languages * other than PHP. Always check for 'version' key because * new major versions can modify the structure of the JSON file. * * The result of running this script is the export.json file. * * @license Code and contributions have 'MIT License' * More details: https://github.com/serbanghita/Mobile-Detect/blob/master/LICENSE.txt * */ // Included nicejson function to beautify the result JSON file. // This library is not mandatory. if (file_exists(dirname(__FILE__) . '/nicejson/nicejson.php')) { include_once dirname(__FILE__) . '/nicejson/nicejson.php'; } // Include Mobile Detect. require_once dirname(__FILE__) . '/../Mobile_Detect.php'; $detect = new Mobile_Detect(); $json = array('version' => $detect->getScriptVersion(), 'headerMatch' => $detect->getMobileHeaders(), 'uaHttpHeaders' => $detect->getUaHttpHeaders(), 'uaMatch' => array('phones' => $detect->getPhoneDevices(), 'tablets' => $detect->getTabletDevices(), 'browsers' => $detect->getBrowsers(), 'os' => $detect->getOperatingSystems(), 'utilities' => $detect->getUtilities())); $jsonString = function_exists('json_format') ? json_format($json) : json_encode($json); // Write the JSON file to disk. // You can import this file in your app. $fileName = dirname(__FILE__) . '/../Mobile_Detect.json'; $handle = fopen($fileName, 'w'); $fwrite = fwrite($handle, $jsonString); fclose($handle); if ($fwrite) { echo 'Done. Check ' . realpath($fileName) . ' file.'; } else { echo 'Failed to write ' . realpath($fileName) . ' to disk.'; }