当前位置: 首页>>代码示例>>PHP>>正文


PHP zotop::application方法代码示例

本文整理汇总了PHP中zotop::application方法的典型用法代码示例。如果您正苦于以下问题:PHP zotop::application方法的具体用法?PHP zotop::application怎么用?PHP zotop::application使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在zotop的用法示例。


在下文中一共展示了zotop::application方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: build

 /**
  * 根据参数生成完整的URL,如:url::build('site://zotop/index/default/arg1/arg2',array('param1'=>'1'),'#top')
  *
  * @param string 		$uri 		如:{application}://{module}/{controller}/{action}/{arg1}/arg2 组成
  * @param array|string 	$params 	URL参数 ,一般为数组,也可以是字符串,如:param1/1/param2/2
  * @param string 		$extra	 	额外数据:如锚点信息等
  * @return string		如:/index.php/module/controller/action/arg1/arg2?param1=1&param2=2#top
  */
 public static function build($uri = '', $params = null, $extra = '')
 {
     $application = '';
     if (strpos($uri, '://')) {
         list($application, $uri) = explode('://', $uri);
     }
     //获取入口文件地址
     if (empty($application)) {
         $base = url::scriptname();
     } else {
         $base = zotop::application($application, 'url') . '/' . zotop::application($application, 'base');
         $base = url::decode($base);
     }
     //uri处理
     if ($u = explode('/', trim($uri, '/'))) {
         //获取namespace 和 arguments
         $namespace = array_slice($u, 0, 3);
         $namespace = implode('/', $namespace);
         $arguments = array_slice($u, 3);
         //namespace切换
         $namespace = zotop::filter('zotop.namespace', $namespace, &$arguments);
         foreach ($arguments as $arg) {
             $querystring .= '/' . $arg;
         }
         //querystring
         $querystring = $namespace . $querystring;
         $querystring = empty($querystring) ? '' : '/' . $uri;
         $querystring .= empty($suffix) ? '' : $suffix;
     }
     //处理id/5/n/6 形式的参数
     if (!is_array($params)) {
         $args = explode('/', $params);
         while ($key = array_shift($args)) {
             $params[$key] = array_shift($args);
         }
     }
     if (is_array($params) && !empty($params)) {
         if (strpos($querystring, '?')) {
             $querystring .= '&' . http_build_query($params);
         } else {
             $querystring .= '?' . http_build_query($params);
         }
     }
     //组装url
     $url = $base . $querystring . $extra;
     $url = url::clean($url);
     return $url;
 }
开发者ID:dalinhuang,项目名称:zotop,代码行数:56,代码来源:url.php

示例2: getControllerName

 /**
  * 返回当前的控制器的真实名称,含“_controller”
  *
  * @return string
  */
 public static function getControllerName()
 {
     $controller = application::getController();
     if (empty($controller)) {
         $controller = zotop::application(APP_NAME, 'controller');
         $controller = empty($controller) ? 'index' : $controller;
     }
     return $controller . '_controller';
 }
开发者ID:dalinhuang,项目名称:zotop,代码行数:14,代码来源:application.php

示例3: application

 /**
  * 获取当前应用的url
  *
  * @return string 如:<install>/system/admin
  */
 public static function application($id = '')
 {
     if (empty($id)) {
         return dirname(url::base(true));
     }
     $url = zotop::application($id, 'url');
     if ($url[0] !== '/' && strpos($url, '://') === false) {
         $url = url::root() . '/' . $url;
     }
     return $url;
 }
开发者ID:dalinhuang,项目名称:zotop,代码行数:16,代码来源:url.php


注:本文中的zotop::application方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。