本文整理汇总了PHP中Response::type方法的典型用法代码示例。如果您正苦于以下问题:PHP Response::type方法的具体用法?PHP Response::type怎么用?PHP Response::type使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Response
的用法示例。
在下文中一共展示了Response::type方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: cat
public function cat($file, \Response $oReponse = null)
{
$query_string = http_build_query(array());
// récuperation de la requete
require_once __DIR__ . "/Request.php";
$oRequest = new Request();
// lance la requete
$response = $oRequest->send(array('verb' => 'GET', 'resource' => '/' . $this->_bucket . '/' . urlencode($file) . '?' . $query_string), $this->_auth);
// vérification du code de retour
if ($oRequest->info('http_code') !== 200) {
// ouverture du flux xml
require_once __DIR__ . "/XMLElement.php";
throw new Client_Exception(new XMLElement($response), $oRequest);
}
// lecture du flux
if ($oReponse !== null) {
$oReponse->appendBody($response);
$oReponse->type($oRequest->info('content_type'));
// ajout des headers pour le validator HTTP
$aHeaders = $oRequest->info('headers');
$oReponse->header("ETag", $aHeaders['ETag']);
$oReponse->header("Last-Modified", $aHeaders['Last-Modified']);
}
return $response;
}
示例2: run
/**
* 执行应用程序
* @access public
* @return void
*/
public static function run()
{
// 注册错误和异常处理机制 以及初始化配置
register_shutdown_function('\\think\\Error::appShutdown');
set_error_handler('\\think\\Error::appError');
set_exception_handler('\\think\\Error::appException');
Config::load(THINK_PATH . 'config' . EXT);
// 初始化应用(公共模块) 初始化变量配置
self::initModule(COMMON_MODULE, Config::get());
// 获取配置参数
$config = Config::get();
// 设置系统时区
date_default_timezone_set($config['default_timezone']);
// 监听app_init
APP_HOOK && Hook::listen('app_init');
// 开启多语言机制
// 启动session CLI 不开启
if (!IS_CLI && $config['use_session']) {
Session::init($config['session']);
}
if (empty(self::$dispatch['type'])) {
// 未指定调度类型 则进行URL路由检测
self::route($config);
}
// 记录路由信息
APP_DEBUG && Log::record('[ ROUTE ] ' . var_export(self::$dispatch, true), 'info');
// 监听app_begin
APP_HOOK && Hook::listen('app_begin');
// 根据类型调度
switch (self::$dispatch['type']) {
case 'redirect':
// 执行重定向跳转
header('Location: ' . self::$dispatch['url'], true, self::$dispatch['status']);
break;
case 'module':
// 模块/控制器/操作
$data = self::module(self::$dispatch['module'], $config);
break;
case 'controller':
// 执行控制器操作
//$data = Loader::action(self::$dispatch['controller'], self::$dispatch['params']);
break;
case 'method':
// 执行回调方法
$data = self::invokeMethod(self::$dispatch['method'], self::$dispatch['params']);
break;
case 'function':
// 规则闭包
$data = self::invokeFunction(self::$dispatch['function'], self::$dispatch['params']);
break;
default:
throw new Exception('dispatch type not support', 10008);
}
// 监听app_end
APP_HOOK && Hook::listen('app_end', $data);
// 输出数据到客户端
return Response::send($data, Response::type(), Config::get('response_return'));
}
示例3: viaJavaScript
public static function viaJavaScript($url, $parent = false)
{
if ($link = Filter::with('core.redirect', $url)) {
Response::type('text/html');
Response::add('<script>' . ($parent ? 'parent.' : '') . 'location.href="', addslashes($link), '"</script>');
Response::send();
exit;
}
}
示例4: set
public static function set($type, $response)
{
if (!in_array($type, self::$response_types)) {
echo "Invalid Response Type";
return false;
}
self::$type = $type;
self::$response = $response;
return array(self::$type => self::$response);
}
示例5: _injectCookieAdvert
/**
* Inject the script with the cookie warning
*
* @param Response $response : Response
* @return void
*/
protected function _injectCookieAdvert($response)
{
if (strpos($response->type(), 'html') === false) {
return;
}
$body = $response->body();
$pos = strrpos($body, '</body>');
if ($pos === false) {
return;
}
$view = "<iframe src='" . Router::url('/cookie_warning/cookie-warnings/display-info') . "' style='width:100%;position:fixed;top:0;left: 0;z-index:9999' id='cookie_iframe'></iframe>";
$body = substr($body, 0, $pos) . $view . substr($body, $pos);
$response->body($body);
}
示例6: run
/**
* 执行应用程序
* @access public
* @return void
*/
public static function run()
{
// 初始化公共模块
self::initModule(COMMON_MODULE, Config::get());
// 读取扩展配置文件
if (Config::get('extra_config_list')) {
foreach (Config::get('extra_config_list') as $file) {
Config::load($file, $file);
}
}
// 获取配置参数
$config = Config::get();
// 加载额外文件
if (!empty($config['extra_file_list'])) {
foreach ($config['extra_file_list'] as $file) {
$file = strpos($file, '.') ? $file : APP_PATH . $file . EXT;
if (is_file($file)) {
include_once $file;
}
}
}
// 日志初始化
Log::init($config['log']);
// 缓存初始化
Cache::connect($config['cache']);
// 设置系统时区
date_default_timezone_set($config['default_timezone']);
// 监听app_init
APP_HOOK && Hook::listen('app_init');
// 开启多语言机制
if ($config['lang_switch_on']) {
// 获取当前语言
defined('LANG_SET') or define('LANG_SET', Lang::range());
// 加载系统语言包
Lang::load(THINK_PATH . 'lang' . DS . LANG_SET . EXT);
}
// 启动session CLI 不开启
if (!IS_CLI && $config['use_session']) {
Session::init($config['session']);
}
// 应用URL调度
self::dispatch($config);
// 监听app_run
APP_HOOK && Hook::listen('app_run');
// 执行操作
if (!preg_match('/^[A-Za-z](\\/|\\.|\\w)*$/', CONTROLLER_NAME)) {
// 安全检测
throw new Exception('illegal controller name:' . CONTROLLER_NAME, 10000);
}
if (Config::get('action_bind_class')) {
$class = self::bindActionClass(Config::get('empty_controller'));
$instance = new $class();
// 操作绑定到类后 固定执行run入口
$action = 'run';
} else {
$instance = Loader::controller(CONTROLLER_NAME, '', Config::get('empty_controller'));
// 获取当前操作名
$action = ACTION_NAME . Config::get('action_suffix');
}
if (!$instance) {
throw new Exception('class [ ' . Loader::parseClass(MODULE_NAME, CONTROLLER_LAYER, CONTROLLER_NAME) . ' ] not exists', 10001);
}
try {
// 操作方法开始监听
$call = [$instance, $action];
APP_HOOK && Hook::listen('action_begin', $call);
if (!preg_match('/^[A-Za-z](\\w)*$/', $action)) {
// 非法操作
throw new \ReflectionException();
}
//执行当前操作
$method = new \ReflectionMethod($instance, $action);
if ($method->isPublic()) {
// URL参数绑定检测
if (Config::get('url_params_bind') && $method->getNumberOfParameters() > 0) {
// 获取绑定参数
$args = self::getBindParams($method, Config::get('url_parmas_bind_type'));
// 全局过滤
array_walk_recursive($args, 'think\\Input::filterExp');
$data = $method->invokeArgs($instance, $args);
} else {
$data = $method->invoke($instance);
}
// 操作方法执行完成监听
APP_HOOK && Hook::listen('action_end', $data);
// 输出数据
return Response::send($data, Response::type(), Config::get('response_return'));
} else {
// 操作方法不是Public 抛出异常
throw new \ReflectionException();
}
} catch (\ReflectionException $e) {
// 操作不存在
if (method_exists($instance, '_empty')) {
$method = new \ReflectionMethod($instance, '_empty');
//.........这里部分代码省略.........
示例7: run
/**
* 执行应用程序
* @access public
* @return void
*/
public static function run()
{
// 初始化应用(公共模块)
self::initModule(COMMON_MODULE, Config::get());
// 读取扩展配置文件
if (Config::get('extra_config_list')) {
foreach (Config::get('extra_config_list') as $name => $file) {
$file = strpos($file, '.') ? $file : APP_PATH . $file . EXT;
Config::load($file, is_string($name) ? $name : pathinfo($file, PATHINFO_FILENAME));
}
}
// 获取配置参数
$config = Config::get();
// 加载额外文件
if (!empty($config['extra_file_list'])) {
foreach ($config['extra_file_list'] as $file) {
$file = strpos($file, '.') ? $file : APP_PATH . $file . EXT;
if (is_file($file)) {
include_once $file;
}
}
}
// 设置系统时区
date_default_timezone_set($config['default_timezone']);
// 监听app_init
APP_HOOK && Hook::listen('app_init');
// 开启多语言机制
if ($config['lang_switch_on']) {
// 获取当前语言
defined('LANG_SET') or define('LANG_SET', Lang::range());
// 加载系统语言包
Lang::load(THINK_PATH . 'lang' . DS . LANG_SET . EXT);
if (!APP_MULTI_MODULE) {
Lang::load(APP_PATH . 'lang' . DS . LANG_SET . EXT);
}
}
// 启动session CLI 不开启
if (!IS_CLI && $config['use_session']) {
Session::init($config['session']);
}
if (empty(self::$dispatch['type'])) {
// 未指定调度类型 则进行URL路由检测
self::route($config);
}
// 监听app_begin
APP_HOOK && Hook::listen('app_begin');
// 根据类型调度
switch (self::$dispatch['type']) {
case 'redirect':
// 执行重定向跳转
header('Location: ' . self::$dispatch['url'], true, self::$dispatch['status']);
break;
case 'module':
// 模块/控制器/操作
$data = self::module(self::$dispatch['module'], $config);
break;
case 'controller':
// 执行控制器操作
$data = Loader::action(self::$dispatch['controller'], self::$dispatch['params']);
break;
case 'method':
// 执行回调方法
$data = self::invokeMethod(self::$dispatch['method'], self::$dispatch['params']);
break;
case 'function':
// 规则闭包
$data = self::invokeFunction(self::$dispatch['function'], self::$dispatch['params']);
break;
default:
throw new Exception('dispatch type not support', 10008);
}
// 监听app_end
APP_HOOK && Hook::listen('app_end', $data);
// 输出数据到客户端
return Response::send($data, Response::type(), Config::get('response_return'));
}
示例8: fetch
/**
* 解析和获取模板内容 用于输出
* @access public
*
* @param string $template 模板文件名或者内容
* @param array $vars 模板输出变量
* @param array $config 模板参数
* @param bool $renderContent 是否渲染内容
*
* @return string
* @throws Exception
*/
public function fetch($template = '', $vars = [], $config = [], $renderContent = false)
{
// 模板变量
$vars = $vars ? $vars : $this->data;
if (!$renderContent) {
// 获取模板文件名
$template = $this->parseTemplate($template);
// 开启调试模式Win环境严格区分大小写
// 模板不存在 抛出异常
if (!is_file($template) || APP_DEBUG && IS_WIN && realpath($template) != $template) {
throw new Exception('template file not exists:' . $template, 10700);
}
// 记录视图信息
APP_DEBUG && Log::record('[ VIEW ] ' . $template . ' [ ' . var_export($vars, true) . ' ]', 'info');
}
// 页面缓存
ob_start();
ob_implicit_flush(0);
if ('php' == $this->engine || empty($this->engine)) {
// 原生PHP解析
extract($vars, EXTR_OVERWRITE);
is_file($template) ? include $template : eval('?>' . $template);
} else {
// 指定模板引擎
$this->engine->fetch($template, $vars, $config);
}
// 获取并清空缓存
$content = ob_get_clean();
// 内容过滤标签
APP_HOOK && Hook::listen('view_filter', $content);
// 允许用户自定义模板的字符串替换
if (!empty($this->config['parse_str'])) {
$replace = $this->config['parse_str'];
$content = str_replace(array_keys($replace), array_values($replace), $content);
}
if (!Config::get('response_auto_output')) {
// 自动响应输出
return Response::send($content, Response::type());
}
return $content;
}
示例9: run
/**
* 执行应用程序
* @access public
* @return void
*/
public static function run()
{
// 初始化应用(公共模块)
self::initModule(COMMON_MODULE, Config::get());
// 获取配置参数
$config = Config::get();
// 注册根命名空间
if (!empty($config['root_namespace'])) {
Loader::addNamespace($config['root_namespace']);
}
// 加载额外文件
if (!empty($config['extra_file_list'])) {
foreach ($config['extra_file_list'] as $file) {
$file = strpos($file, '.') ? $file : APP_PATH . $file . EXT;
if (is_file($file)) {
include_once $file;
}
}
}
// 设置系统时区
date_default_timezone_set($config['default_timezone']);
// 监听app_init
APP_HOOK && Hook::listen('app_init');
// 开启多语言机制
if ($config['lang_switch_on']) {
// 获取当前语言
defined('LANG_SET') or define('LANG_SET', Lang::range());
// 加载系统语言包
Lang::load(THINK_PATH . 'lang' . DS . LANG_SET . EXT);
if (!APP_MULTI_MODULE) {
Lang::load(APP_PATH . 'lang' . DS . LANG_SET . EXT);
}
}
if (empty(self::$dispatch['type'])) {
// 未指定调度类型 则进行URL路由检测
self::route($config);
}
// 记录路由信息
APP_DEBUG && Log::record('[ ROUTE ] ' . var_export(self::$dispatch, true), 'info');
// 监听app_begin
APP_HOOK && Hook::listen('app_begin');
// 根据类型调度
switch (self::$dispatch['type']) {
case 'redirect':
// 执行重定向跳转
header('Location: ' . self::$dispatch['url'], true, self::$dispatch['status']);
break;
case 'module':
// 模块/控制器/操作
$data = self::module(self::$dispatch['module'], $config);
break;
case 'controller':
// 执行控制器操作
$data = Loader::action(self::$dispatch['controller'], self::$dispatch['params']);
break;
case 'method':
// 执行回调方法
$data = self::invokeMethod(self::$dispatch['method'], self::$dispatch['params']);
break;
case 'function':
// 规则闭包
$data = self::invokeFunction(self::$dispatch['function'], self::$dispatch['params']);
break;
default:
throw new Exception('dispatch type not support', 10008);
}
// 监听app_end
APP_HOOK && Hook::listen('app_end', $data);
// 输出数据到客户端
if (Config::get('response_auto_output')) {
// 自动响应输出
return Response::send($data, Response::type(), Config::get('response_return'));
}
}
示例10: run
/**
* 执行应用程序
* @access public
* @return void
*/
public static function run()
{
// 初始化应用(公共模块)
self::initModule(COMMON_MODULE, Config::get());
// 读取扩展配置文件
if (Config::get('extra_config_list')) {
foreach (Config::get('extra_config_list') as $file) {
Config::load($file, $file);
}
}
// 获取配置参数
$config = Config::get();
// 加载额外文件
if (!empty($config['extra_file_list'])) {
foreach ($config['extra_file_list'] as $file) {
$file = strpos($file, '.') ? $file : APP_PATH . $file . EXT;
if (is_file($file)) {
include_once $file;
}
}
}
// 日志初始化
Log::init($config['log']);
// 缓存初始化
Cache::connect($config['cache']);
// 设置系统时区
date_default_timezone_set($config['default_timezone']);
// 监听app_init
APP_HOOK && Hook::listen('app_init');
// 开启多语言机制
if ($config['lang_switch_on']) {
// 获取当前语言
defined('LANG_SET') or define('LANG_SET', Lang::range());
// 加载系统语言包
Lang::load(THINK_PATH . 'lang' . DS . LANG_SET . EXT);
}
// 启动session CLI 不开启
if (!IS_CLI && $config['use_session']) {
Session::init($config['session']);
}
// URL路由检测
$dispatch = self::route($config);
// 监听app_begin
APP_HOOK && Hook::listen('app_begin', $dispatch);
// 根据类型调度
switch ($dispatch['type']) {
case 'redirect':
// 执行重定向跳转
header('Location: ' . $dispatch['url'], true, $dispatch['status']);
break;
case 'module':
// 模块/控制器/操作
$data = self::module($dispatch['data'], $config);
break;
case 'action':
// 执行操作
$data = Loader::action($dispatch['action'], $dispatch['params']);
break;
case 'behavior':
// 执行行为
$data = Hook::exec($dispatch['class'], $dispatch['method'], $dispatch['params']);
break;
case 'regex_closure':
// 正则闭包
$data = self::invokeRegex($dispatch['closure'], $dispatch['params']);
break;
case 'rule_closure':
// 规则闭包
$data = self::invokeRule($dispatch['closure'], $dispatch['params']);
break;
default:
throw new Exception('dispatch type not support', 10008);
}
// 监听app_end
APP_HOOK && Hook::listen('app_end', $data);
// 输出数据到客户端
return Response::send($data, Response::type(), Config::get('response_return'));
}
示例11: run
/**
* 执行应用程序
* @access public
* @return void
*/
public static function run()
{
// 初始化应用(公共模块)
self::initModule(COMMON_MODULE, Config::get());
// 读取扩展配置文件
if (Config::get('extra_config_list')) {
foreach (Config::get('extra_config_list') as $file) {
Config::load($file, $file);
}
}
// 获取配置参数
$config = Config::get();
// 加载额外文件
if (!empty($config['extra_file_list'])) {
foreach ($config['extra_file_list'] as $file) {
$file = strpos($file, '.') ? $file : APP_PATH . $file . EXT;
if (is_file($file)) {
include_once $file;
}
}
}
// 日志初始化
Log::init($config['log']);
// 缓存初始化
Cache::connect($config['cache']);
// 设置系统时区
date_default_timezone_set($config['default_timezone']);
// 监听app_init
APP_HOOK && Hook::listen('app_init');
// 开启多语言机制
if ($config['lang_switch_on']) {
// 获取当前语言
defined('LANG_SET') or define('LANG_SET', Lang::range());
// 加载系统语言包
Lang::load(THINK_PATH . 'lang' . DS . LANG_SET . EXT);
}
// 启动session CLI 不开启
if (!IS_CLI && $config['use_session']) {
Session::init($config['session']);
}
if (empty(self::$dispatch['type'])) {
// 未指定调度类型 则进行URL路由检测
self::route($config);
}
// 监听app_begin
APP_HOOK && Hook::listen('app_begin');
// 根据类型调度
switch (self::$dispatch['type']) {
case 'redirect':
// 执行重定向跳转
header('Location: ' . self::$dispatch['url'], true, self::$dispatch['status']);
break;
case 'module':
// 模块/控制器/操作
$data = self::module(self::$dispatch['data'], $config);
break;
case 'controller':
// 执行控制器操作
$data = Loader::action(self::$dispatch['controller'], self::$dispatch['params']);
break;
case 'callable':
// 执行回调方法
$callable = self::$dispatch['callable'];
if (is_callable($callable)) {
$data = is_array($callable) ? self::reflectionInvoke(new $callable[0](), $callable[1]) : call_user_func_array($callable, self::$dispatch['params']);
// 静态方法或者函数
} else {
throw new Exception('not callable : ' . (is_array($callable) ? implode('->', $callable) : $callable), 10009);
}
break;
case 'closure':
// 规则闭包
$data = self::invoke(self::$dispatch['closure'], self::$dispatch['params']);
break;
default:
throw new Exception('dispatch type not support', 10008);
}
// 监听app_end
APP_HOOK && Hook::listen('app_end', $data);
// 输出数据到客户端
return Response::send($data, Response::type(), Config::get('response_return'));
}
示例12: viaJavaScript
public static function viaJavaScript($url, $parent = false)
{
Response::type('text/html');
Response::text('<script>' . ($parent ? 'parent.' : '') . 'location.href="', addslashes($url), '"</script>');
}
示例13: run
/**
* Run one of the mapped callbacks to a passed HTTP Method.
* @param array $args The arguments to be passed to the callback
* @param string $method The HTTP Method requested.
* @return array The callback response.
*/
public function run(array $args, $method = 'get')
{
$method = strtolower($method);
$append_echoed_text = Options::get('core.route.append_echoed_text', true);
static::trigger('start', $this, $args, $method);
// Call direct befores
if ($this->befores) {
// Reverse befores order
foreach (array_reverse($this->befores) as $mw) {
static::trigger('before', $this, $mw);
Event::trigger('core.route.before', $this, $mw);
ob_start();
$mw_result = call_user_func($mw);
$raw_echoed = ob_get_clean();
if ($append_echoed_text) {
Response::add($raw_echoed);
}
if (false === $mw_result) {
return [''];
} else {
Response::add($mw_result);
}
}
}
$callback = is_array($this->callback) && isset($this->callback[$method]) ? $this->callback[$method] : $this->callback;
if (is_callable($callback) || is_a($callback, "View")) {
Response::type(Options::get('core.route.response_default_type', Response::TYPE_HTML));
ob_start();
if (is_a($callback, "View")) {
// Get the rendered view
$view_results = (string) $callback;
} else {
$view_results = call_user_func_array($callback, $args);
}
$raw_echoed = ob_get_clean();
if ($append_echoed_text) {
Response::add($raw_echoed);
}
Response::add($view_results);
}
// Apply afters
if ($this->afters) {
foreach ($this->afters as $mw) {
static::trigger('after', $this, $mw);
Event::trigger('core.route.after', $this, $mw);
ob_start();
$mw_result = call_user_func($mw);
$raw_echoed = ob_get_clean();
if ($append_echoed_text) {
Response::add($raw_echoed);
}
if (false === $mw_result) {
return [''];
} else {
Response::add($mw_result);
}
}
}
static::trigger('end', $this, $args, $method);
Event::trigger('core.route.end', $this);
return [Filter::with('core.route.response', Response::body())];
}