<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## Yaf官方文檔參考 http://php.net/manual/zh/class.yaf-request-abstract.php http://www.laruence.com/manual/yaf.class.request.html > 在控制器繼承了 Yaf\Controller_Abstract 可以通過$this->getRequest()來獲取當前請求的對象。該對象為Yaf\Request\Http 的實例。 > http請求或者Cli模式下的,一般不用自己去實例化,Yaf_Application(開啟命名空間后為Yaf\Application)在run以后會自動根據當前請求實例它。 > 如果是在命令行或者終端下運行,則 $this->getRequest() 為 Yaf\Request\Simple的實例。 ## Request類 #### Yaf\Request_Abstract Request抽象類 #### Yaf\Request\Http Web請求實體類,該類繼承自Yaf\Request_Abstract #### Yaf\Request\Simple 終端請求實體類,同樣繼承自Yaf\Request_Abstract, CLI模式下可以模擬一些測試,或者跑一些任務腳本。 ## 獲取請求信息 ### (1) 獲取服務器及環境信息 getServer:獲取服務器變量信息,類似于$_SERVER全局變量 getEnv:獲取環境變量信息,類似于$_ENV getLanguage:獲取客戶端的語言信息,如zh-CN ``` var_dump($this->getRequest()->getServer() === $_SERVER); // true var_dump($this->getRequest()->getEnv() === $_ENV); // true var_dump($this->getRequest()->getLanguage()); // ``` ### (2) 獲取請求參數 * get:從客戶端返回變量,這個方法將從請求參數中尋找參數name,如果沒有找到的話,將從POST, GET, Cookie, Server中尋找 * getPost:獲取POST請求數據 * getQuery : 獲取查詢字符串的信息 * getParam : 獲取路由參數信息 * getParams : 獲取所有路由參數信息 * getRequestUri : 獲取請求的uri * getMethod : 獲取請求的類型 * getBaseUri : 獲取請求的基本uri * getCookie : 獲取cookie信息 * getFiles : 獲取請求中的文件信息 演示代碼 ``` $request = $this->getRequest(); echo '<pre>'; // http://127.0.0.1/example/request/params?user=test&uid=1 var_dump($request->get('user')); // test var_dump($request->getQuery()); // ['user' => test, 'uid' => 1] var_dump($request->getQuery('user')); // test var_dump($request->getPost()); // empty var_dump($request->getPost('user')); // null var_dump($request->getRequestUri()); // /example/request/params var_dump($request->getMethod()); // GET var_dump($request->getBaseUri()); // '' var_dump($request->getCookie()); // emtpy var_dump($request->getFiles()); // empty // http://yaf-skel.com/example/request/params/user/test/uid/1 var_dump($request->getParams()); // ['user' => test, 'uid' => 1] var_dump($request->getParam('uid')); // 1 var_dump($request->getRequestUri()); // /example/request/params/user/test/uid/1 ``` ### (3) 判斷請求類型 * isCli:是否為命令行 * isGet:是否為get請求 * isPost:是否為Post請求 * isPut:是否為PUT請求 * isHead:是否為Head請求 * isOptions:是否為Options請求 * isXmlHttpRequest:是否為ajax請求 ``` /** * 獲取請求類型 */ public function methodAction() { var_dump($this->getRequest()->isCli()); var_dump($this->getRequest()->isGet()); var_dump($this->getRequest()->isPost()); var_dump($this->getRequest()->isPut()); var_dump($this->getRequest()->isXmlHttpRequest()); // 是否為ajax請求 var_dump($this->getRequest()->isHead()); var_dump($this->getRequest()->isOptions()); } ``` ### (4) 與分發相關的方法 * getModuleName:獲取當前模塊名稱 * getControllerName:獲取當前控制器名稱 * getActionName:獲取當前操作名稱 * getException:獲取當前請求異常對象 * isDispatched:是否已經分發請求 * isRouted:是否已經將路由規則進行匹配 設置分發匹配 這個默認是系統分發時調用,如果是使用自定義路由協議,會使用到 * setBaseUri:設置基本的uri,一般不需要設置,框架會自動識別 * setModuleName:設置模塊名稱 * setControllerName:設置控制器名稱 * setActionName:設置操作名稱 * setParam:設置路由參數 * setRequestUri:設置請求uri * setRouted:設置是否已經路由 * setDispatched:設置是否已經分發路由 ``` /** * 獲取分發相關的方法 */ public function dispatchAction() { $this->getRequest()->setModuleName('Api'); $this->getRequest()->setControllerName('Index'); $this->getRequest()->setActionName('xxx'); $this->getRequest()->setDispatched(); $this->getRequest()->setRouted(); } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看