/** * @param $request * @return array */ function getAutocompleteData($request) { return Memcache\Handler::factory()->cache($request . '_autocomplete', \Memcache\Handler::MINUTE, function () use($request) { $client = new MongoClient(MONGO_DSN); $collection = $client->selectDB(MONGO_DBNAME)->selectCollection(MONGO_COLLECTION); $records = $collection->find(['request' => array('$regex' => new MongoRegex('/^' . $request . '/i'))])->sort(['request' => 1])->limit(10); $result = []; foreach ($records as $item) { $result[] = ['value' => $item['request'], 'data' => ucwords($item['request'])]; } return $result; }); }
<?php define('ROOT_DIR', __DIR__); require_once __DIR__ . '/vendor/autoload.php'; require_once __DIR__ . '/config.php'; require_once __DIR__ . '/functions.php'; require_once __DIR__ . '/libs/Memcache/Handler.php'; $app = new \Slim\Slim(['templates.path' => TEMPLATES_DIR]); /** * Main page */ $app->get('/', function () use($app) { $results = Memcache\Handler::factory()->cache('maintop', Memcache\Handler::DAY, function () { $xml = new SimpleXMLElement(file_get_contents('http://ax.itunes.apple.com/WebObjects/MZStoreServices.woa/ws/RSS/topsongs/limit=30/xml')); return json_encode($xml); }); $app->render('layout.php', ['page' => 'main', 'results' => json_decode($results, true)['entry'], 'title' => 'Download mp3 free | Quick Search music | Download music for free', 'description' => 'Download free most popular mp3 and listen online music just now. Watch music video online']); }); /** * Last requests */ $app->get('/now.html', function () use($app) { $app->render('layout.php', ['page' => 'now', 'results' => getLastQueries(30), 'title' => 'Now Playing On Mp3Cooll.com', 'description' => 'Users listen now on mp3cooll.com']); }); /** * Disclamer route */ $app->get('/disclamer.html', function () use($app) { $app->render('layout.php', ['page' => 'disclamer', 'title' => 'Disclamer | Mp3Cooll.com', 'description' => 'Download mp3 and listen online song just now unlimited. Watch video']); }); /**