Info.php 813 B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace Predis\Commands;
  3. use Predis\Command;
  4. class Info extends Command {
  5. public function canBeHashed() { return false; }
  6. public function getCommandId() { return 'INFO'; }
  7. public function parseResponse($data) {
  8. $info = array();
  9. $infoLines = explode("\r\n", $data, -1);
  10. foreach ($infoLines as $row) {
  11. list($k, $v) = explode(':', $row);
  12. if (!preg_match('/^db\d+$/', $k)) {
  13. $info[$k] = $v;
  14. }
  15. else {
  16. $db = array();
  17. foreach (explode(',', $v) as $dbvar) {
  18. list($dbvk, $dbvv) = explode('=', $dbvar);
  19. $db[trim($dbvk)] = $dbvv;
  20. }
  21. $info[$k] = $db;
  22. }
  23. }
  24. return $info;
  25. }
  26. }