本文整理汇总了PHP中Q_Response::output方法的典型用法代码示例。如果您正苦于以下问题:PHP Q_Response::output方法的具体用法?PHP Q_Response::output怎么用?PHP Q_Response::output使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Q_Response
的用法示例。
在下文中一共展示了Q_Response::output方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Streams_froala_post
function Streams_froala_post($params = array())
{
$params = array_merge($_REQUEST, $params);
try {
$p = $params;
if (!$p['icon']) {
$p['icon'] = array();
}
$p['icon']['data'] = $_REQUEST['image'];
$p['icon']['save'] = array('x' => 'x.png');
Q::event('Streams/stream/post', $p);
Q_Response::output(json_encode(array('link' => Streams::$cache['stream']->iconUrl('x.png'))));
} catch (Exception $e) {
Q_Response::output(json_encode(array('error' => $e->getMessage())));
}
}
示例2: Users_importContacts_tool
/**
* Renders an import tool
* @param $options
* An associative array of parameters, which can include:
* "provider" => Required. The provider from which we are importing.
* @return {string}
*/
function Users_importContacts_tool($options)
{
$provider = $options['provider'];
ob_start();
try {
if (!($client = Users::oAuth($provider))) {
throw new Users_Exception_NotAuthorized();
}
Q::event('Users/importContacts/providers/' . $provider, array('client' => $client));
} catch (Users_Exception_OAuthTokenInvalid $ex) {
#TODO: Log something to error log?
Users::oAuthClear($provider);
Q_Response::redirect(Q_Uri::url(Q_Request::url(true)));
return false;
} catch (Zend_Oauth_Exception $ex) {
#TODO: Show a nicely-formatted message and close the pop-up
echo 'Could not import contacts: ' . $ex->getMessage();
}
$out = ob_get_contents();
ob_clean();
Q_Response::output($out, true);
return true;
}
示例3: Q_response
/**
* Default Q/response handler.
* 1. Gets some slots, depending on what was requested.
* 2. Renders them in a layout
* The layout expects "title", "dashboard" and "contents" slots to be filled.
*/
function Q_response($params)
{
extract($params);
/**
* @var Exception $exception
* @var array $errors
*/
if (empty($errors)) {
$errors = Q_Response::getErrors();
}
if (!empty($_GET['Q_ct'])) {
Q_Response::setCookie('Q_ct', $_GET['Q_ct']);
}
// If output is set, use that
$output = Q_Response::output();
if (isset($output)) {
if ($output === true) {
return;
}
if (is_string($output)) {
echo $output;
}
return;
}
// Redirect to success page, if requested.
$isAjax = Q_Request::isAjax();
if (empty($errors) and empty($exception)) {
if (!$isAjax and null !== Q_Request::special('onSuccess', null)) {
$onSuccess = Q_Request::special('onSuccess', null);
if (Q_Config::get('Q', 'response', 'onSuccessShowFrom', true)) {
$onSuccess = Q_Uri::url($onSuccess . '?Q.fromSuccess=' . Q_Dispatcher::uri());
}
Q_Response::redirect($onSuccess);
return;
}
}
// Get the requested module
$uri = Q_Dispatcher::uri();
if (!isset($module)) {
$module = $uri->module;
if (!isset($module)) {
$module = 'Q';
Q_Dispatcher::uri()->module = 'Q';
}
}
if (!$isAjax || Q_Request::isLoadExtras()) {
Q::event('Q/responseExtras', array(), 'before');
}
// Get the main module (the app)
$app = Q_Config::expect('Q', 'app');
$action = $uri->action;
if (Q::canHandle("{$module}/{$action}/response")) {
if (false === Q::event("{$module}/{$action}/response") and !$isAjax) {
return;
}
}
$slotNames = Q_Request::slotNames(true);
$idPrefixes = array();
if ($temp = Q_Request::special('idPrefixes', null)) {
foreach (explode(',', $temp) as $i => $prefix) {
if (!isset($slotNames[$i])) {
throw new Q_Exception("More id prefixes than slot names", "Q.idPrefixes");
}
$idPrefixes[$slotNames[$i]] = $prefix;
}
}
// What to do if this is an AJAX request
if ($isAjax) {
$to_encode = array();
if (Q_Response::$redirected) {
// We already called Q_Response::redirect
$to_encode['redirect']['url'] = Q_Uri::url(Q_Response::$redirected);
try {
$to_encode['redirect']['uri'] = Q_Uri::from(Q_Response::$redirected)->toArray();
} catch (Exception $e) {
// couldn't get internal URI
}
} else {
if (is_array($slotNames)) {
foreach ($slotNames as $slotName) {
Q_Response::fillSlot($slotName, 'default', Q::ifset($idPrefixes, $slotName, null));
}
// Go through the slots again, because other handlers may have overwritten
// their contents using Q_Response::setSlot()
foreach ($slotNames as $sn) {
Q_Response::fillSlot($sn, 'default', Q::ifset($idPrefixes, $slotName, null));
}
if (Q_Response::$redirected) {
// While rendering the slots we called Q_Redirect
$to_encode['redirect']['url'] = Q_Uri::url(Q_Response::$redirected);
try {
$to_encode['redirect']['uri'] = Q_Uri::from(Q_Response::$redirected)->toArray();
} catch (Exception $e) {
// couldn't get internal URI
//.........这里部分代码省略.........