最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Zend Framework動作助手Url用法詳解

 更新時間:2016年03月05日 10:59:16   作者:coder  
這篇文章主要介紹了Zend Framework動作助手Url用法,結(jié)合實例形式分析了動作助手Url的功能,定義與相關(guān)使用技巧,需要的朋友可以參考下

本文實例講述了Zend Framework動作助手Url用法。分享給大家供大家參考,具體如下:

Url主要用于創(chuàng)建url;

public function simple($action, $controller = null, $module = null, array $params = null)
public function url($urlOptions = array(), $name = null, $reset = false, $encode = true)
public function direct($action, $controller = null, $module = null, array $params = null)

<?php
class IndexController extends Zend_Controller_Action
{
  public function init()
  {
    /* Initialize action controller here */
  }
  public function indexAction()
  {
    //$urlParser = $this->_helper->getHelper('UrlParser');
    //var_dump($urlParser->parse('http://www.fzitv.net/article/80479.htm'));
    $url = $this->_helper->getHelper('Url');
    $action = 'actionname';
    $controller = 'controllername';
    $module = 'modulename';
    $params = array('param1'=>'中文參數(shù)');
    var_dump($url->simple($action, $controller, $module, $params));
    $urlOptions = array(
        'action'=>$action,
        'controller'=>$controller,
        'module'=>$module,
        'params'=>$params);
    var_dump($url->url($urlOptions));
    var_dump($url->direct($action, $controller, $module, $params));
    exit;
  }
}

www.localzend.com/helper_demo1/public/index

string(101) "/helper_demo1/public/modulename/controllername/actionname/param1/%E4%B8%AD%E6%96%87%E5%8F%82%E6%95%B0"
string(101) "/helper_demo1/public/modulename/controllername/actionname/params/%E4%B8%AD%E6%96%87%E5%8F%82%E6%95%B0"
string(101) "/helper_demo1/public/modulename/controllername/actionname/param1/%E4%B8%AD%E6%96%87%E5%8F%82%E6%95%B0"

實現(xiàn)源碼如下:

/**
 * @see Zend_Controller_Action_Helper_Abstract
 */
require_once 'Zend/Controller/Action/Helper/Abstract.php';
/**
 * Helper for creating URLs for redirects and other tasks
 *
 * @uses    Zend_Controller_Action_Helper_Abstract
 * @category  Zend
 * @package  Zend_Controller
 * @subpackage Zend_Controller_Action_Helper
 * @copyright Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
 * @license  http://framework.zend.com/license/new-bsd   New BSD License
 */
class Zend_Controller_Action_Helper_Url extends Zend_Controller_Action_Helper_Abstract
{
  /**
   * Create URL based on default route
   *
   * @param string $action
   * @param string $controller
   * @param string $module
   * @param array $params
   * @return string
   */
  public function simple($action, $controller = null, $module = null, array $params = null)
  {
    $request = $this->getRequest();
    if (null === $controller) {
      $controller = $request->getControllerName();
    }
    if (null === $module) {
      $module = $request->getModuleName();
    }
    $url = $controller . '/' . $action;
    if ($module != $this->getFrontController()->getDispatcher()->getDefaultModule()) {
      $url = $module . '/' . $url;
    }
    if ('' !== ($baseUrl = $this->getFrontController()->getBaseUrl())) {
      $url = $baseUrl . '/' . $url;
    }
    if (null !== $params) {
      $paramPairs = array();
      foreach ($params as $key => $value) {
        $paramPairs[] = urlencode($key) . '/' . urlencode($value);
      }
      $paramString = implode('/', $paramPairs);
      $url .= '/' . $paramString;
    }
    $url = '/' . ltrim($url, '/');
    return $url;
  }
  /**
   * Assembles a URL based on a given route
   *
   * This method will typically be used for more complex operations, as it
   * ties into the route objects registered with the router.
   *
   * @param array  $urlOptions Options passed to the assemble method of the Route object.
   * @param mixed  $name    The name of a Route to use. If null it will use the current Route
   * @param boolean $reset
   * @param boolean $encode
   * @return string Url for the link href attribute.
   */
  public function url($urlOptions = array(), $name = null, $reset = false, $encode = true)
  {
    $router = $this->getFrontController()->getRouter();
    return $router->assemble($urlOptions, $name, $reset, $encode);
  }
  /**
   * Perform helper when called as $this->_helper->url() from an action controller
   *
   * Proxies to {@link simple()}
   *
   * @param string $action
   * @param string $controller
   * @param string $module
   * @param array $params
   * @return string
   */
  public function direct($action, $controller = null, $module = null, array $params = null)
  {
    return $this->simple($action, $controller, $module, $params);
  }
}

更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《Yii框架入門及常用技巧總結(jié)》、《ThinkPHP入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計有所幫助。

相關(guān)文章

  • PHP學(xué)習(xí)記錄之?dāng)?shù)組函數(shù)

    PHP學(xué)習(xí)記錄之?dāng)?shù)組函數(shù)

    這篇文章主要介紹了PHP學(xué)習(xí)記錄之?dāng)?shù)組函數(shù),php中的數(shù)組是一個有序映射,數(shù)組可以接受任意數(shù)量用逗號分隔符的鍵值對。下面結(jié)合代碼實例給大家接受,感興趣的朋友一起看看吧
    2018-06-06
  • 使用Composer安裝Yii框架的方法

    使用Composer安裝Yii框架的方法

    這篇文章主要介紹了使用Composer安裝Yii框架的方法,結(jié)合具體實例分析了Composer的相關(guān)使用技巧,需要的朋友可以參考下
    2016-03-03
  • Laravel如何使用Redis共享Session

    Laravel如何使用Redis共享Session

    這篇文章主要介紹了Laravel如何使用Redis共享Session ,本文給大家介紹的非常詳細(xì),具有參考借鑒價值,需要的朋友可以參考下
    2018-02-02
  • 詳解php用curl調(diào)用接口方法,get和post兩種方式

    詳解php用curl調(diào)用接口方法,get和post兩種方式

    本篇文章主要介紹了詳解php用curl調(diào)用接口方法,get和post兩種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • web server使用php生成web頁面的三種方法總結(jié)

    web server使用php生成web頁面的三種方法總結(jié)

    web server使用php生成web頁面的三種方法。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-10-10
  • 從零開始學(xué)YII2框架(四)擴展插件yii2-kartikgii

    從零開始學(xué)YII2框架(四)擴展插件yii2-kartikgii

    yii2-kartikgii這個插件主要功能是幫助你在使用gii生成代碼curd的時候生成kartik-gird的。不需要每次用默認(rèn)的gii工具生成代碼之后再手動添加kartik-gird,這正是我想要的功能??焖偕蒶artik-grid。
    2014-08-08
  • 基于PHP如何把漢字轉(zhuǎn)化為拼音

    基于PHP如何把漢字轉(zhuǎn)化為拼音

    將漢字轉(zhuǎn)化為拼音是程序員們經(jīng)常用到的操作任務(wù)之一,大家還經(jīng)常見到ios 將漢字轉(zhuǎn)化為拼音、excel漢字轉(zhuǎn)化成拼音、excel漢字轉(zhuǎn)化為拼音等,本文通過一段代碼實例給大家介紹基于PHP如何把漢字轉(zhuǎn)化為拼音,感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12
  • Laravel (Lumen) 解決JWT-Auth刷新token的問題

    Laravel (Lumen) 解決JWT-Auth刷新token的問題

    今天小編就為大家分享一篇Laravel (Lumen) 解決JWT-Auth刷新token的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • thinkphp區(qū)間查詢、統(tǒng)計查詢與SQL直接查詢實例分析

    thinkphp區(qū)間查詢、統(tǒng)計查詢與SQL直接查詢實例分析

    這篇文章主要介紹了thinkphp區(qū)間查詢、統(tǒng)計查詢與SQL直接查詢,以實例形式較為詳細(xì)的分析了ThinkPHP比較常用的查詢技巧,非常具有實用價值,需要的朋友可以參考下
    2014-11-11
  • yii中widget的用法

    yii中widget的用法

    這篇文章主要介紹了yii中widget的用法,實例分析了widget在視圖中的調(diào)用方法以及定義方法,具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-12-12

最新評論

宽甸| 贞丰县| 河北区| 乌拉特前旗| 津南区| 黔西| 雷波县| 苗栗县| 阿拉善左旗| 石阡县| 宝兴县| 安溪县| 陈巴尔虎旗| 雷山县| 鸡西市| 红河县| 宁远县| 清水河县| 永城市| 芜湖县| 多伦县| 泗水县| 海宁市| 万荣县| 五家渠市| 阳春市| 定结县| 潜山县| 龙胜| 长海县| 濮阳市| 攀枝花市| 靖州| 额尔古纳市| 广东省| 汶上县| 磐安县| 象州县| 喜德县| 朝阳市| 澜沧|