// support JSON-P if (isset($i_callback)) { header('Content-Type: text/javascript'); if ($_method == 'GET') { if ($_output == 'json' || isset($i_query)) { echo $i_callback, '('; register_shutdown_function(function () { echo ');'; }); } else { echo $i_callback, '("'; register_shutdown_function(function () { echo '");'; }); } } } elseif (isset($i_query) || isset($i_any)) { header('Content-Type: application/json'); } else { header("Content-Type: {$_output_type}"); } // eg. method != OPTIONS if (in_array($_method, array('GET', 'POST'))) { if (isset($i_any)) { echo json_encode($g->any(isset($i_any['s']) ? $i_any['s'] : null, isset($i_any['p']) ? $i_any['p'] : null)); } elseif (isset($i_query)) { echo $g->query_to_string($i_query, $_output, $_base); } else { echo $g->to_string($_output); } }