本文整理匯總了PHP中zotop::applicationes方法的典型用法代碼示例。如果您正苦於以下問題:PHP zotop::applicationes方法的具體用法?PHP zotop::applicationes怎麽用?PHP zotop::applicationes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類zotop
的用法示例。
在下文中一共展示了zotop::applicationes方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: build
/**
* 根據參數生成完整的URL,如:url::build('zotop/index/default',array('id'=>'1'))
*
* @param string $uri 一般由{app}://{module}/{controller}/{action}組成
* @param array|string $params 動作參數 ,一般為數組
* @param array|string $arguments URL參數 ,一般為數組
* @param string $fragment 錨點
* @return string
*/
public static function build($uri, $params = null, $arguments = '', $fragment = '')
{
$uri = trim($uri, '/');
$app = '';
if (strpos($url, '://') !== false) {
$u = explode('://', $uri);
$app = $u[0];
$uri = $u[1];
}
//獲取入口文件地址
if (empty($app)) {
$base = url::scriptname();
} else {
$base = zotop::applicationes($app, 'url') . '/' . zotop::applicationes($app, 'base');
}
//獲取module/controller/action
if ($u = explode('/', trim($uri, '/'))) {
$namespace = implode('/', array_slice($u, 0, 3));
}
//處理id/5/n/6 形式的參數
if (!is_array($params)) {
$args = array();
$array = explode('/', $params);
while ($key = array_shift($array)) {
$args[$key] = array_shift($array);
}
$params = $args;
}
//合並參數
$str = '';
foreach ($params as $key => $value) {
$str .= '/' . rawurlencode($value);
}
//組裝url
$url = $base . '/' . $namespace . $str . $fragment;
$url = url::clean($url);
return $url;
}