Source for file Urlhandler.php

Documentation is available at Urlhandler.php

  1. <?php
  2. // vim: foldmethod=marker tabstop=4 shiftwidth=4 autoindent
  3. /**
  4.  *  Urlhandler.php
  5.  *
  6.  *  @author     Masaki Fujimoto <fujimoto@php.net>
  7.  *  @license    http://www.opensource.org/licenses/bsd-license.php The BSD License
  8.  *  @package    Ethna
  9.  *  @version    $Id: 50fdda60c3d92d427093bb06aeb7283c81ad1b94 $
  10.  */
  11.  
  12. // {{{ Ethna_Plugin_Urlhandler
  13. /**
  14.  *  Urlhandlerプラグインの基底クラス
  15.  *
  16.  *  @author     Masaki Fujimoto <fujimoto@php.net>
  17.  *  @access     public
  18.  *  @package    Ethna
  19.  */
  20. {
  21.     /**#@+
  22.      *  @access private
  23.      */
  24.  
  25.     /**#@-*/
  26.  
  27.     /**
  28.      *  アクションをユーザリクエストに変換する
  29.      *
  30.      *  @param string $action 
  31.      *  @param array $param 
  32.      *  @access public
  33.      *  @return array array($path_string, $path_key)
  34.      */
  35.     function actionToRequest($action$param)
  36.     {
  37.         die('override!');
  38.     }
  39.  
  40.     /**
  41.      *  ユーザリクエストをアクションに変換する
  42.      *
  43.      *  @param array $http_vars 
  44.      *  @access public
  45.      *  @return array $http_vars with 'action_foobar' => 'true' element.
  46.      */
  47.     function requestToAction($http_vars)
  48.     {
  49.         die('override!');
  50.     }
  51.  
  52.     /**
  53.      *  アクションをリクエストパラメータに変換する
  54.      *
  55.      *  @access public
  56.      *  @param array $http_vars 
  57.      *  @param string $action 
  58.      *  @return $http_vars with 'action_foobar' element.
  59.      */
  60.     function buildActionParameter($http_vars$action)
  61.     {
  62.         if ($action == ""{
  63.             return $http_vars;
  64.         }
  65.         $key sprintf('action_%s'$action);
  66.         $http_vars[$key'true';
  67.         return $http_vars;
  68.     }
  69.  
  70.     /**
  71.      *  パラメータをURLに変換する
  72.      *
  73.      *  @access public
  74.      *  @param array $query query list
  75.      *  @return string query string
  76.      */
  77.     function buildQueryParameter($query)
  78.     {
  79.         $param '';
  80.  
  81.         foreach ($query as $key => $value{
  82.             if (is_array($value)) {
  83.                 foreach ($value as $k => $v{
  84.                     if (is_numeric($k)) {
  85.                         $k '';
  86.                     }
  87.                     $param .= sprintf('%s=%s&',
  88.                                       urlencode(sprintf('%s[%s]'$key$k)),
  89.                                       urlencode($v));
  90.                 }
  91.             else if (is_null($value== false{
  92.                 $param .= sprintf('%s=%s&'urlencode($key)urlencode($value));
  93.             }
  94.         }
  95.  
  96.         return substr($param0-1);
  97.     }
  98. }
  99. // }}}

Documentation generated on Fri, 11 Nov 2011 03:59:15 +0900 by phpDocumentor 1.4.3