Changeset 13514

Show
Ignore:
Timestamp:
06/08/08 21:54:06 (5 years ago)
Author:
wozozo
Message:

誤植修正

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • websites/zf-users.jp/public/application/default/views/scripts/codes/create-custom-routes.phtml

    r13481 r13514  
    2929    <dd>標準カスタムルーティング↑の次に使われていて、正規表現を使って複雑なURLを扱えます。 "/archive/2006/02/01/Foo.html"</dd> 
    3030    <dt><a href="http://framework.zend.com/manual/ja/zend.controller.router.html#zend.controller.router.routes.static">Zend_Controller_Router_Route_Static</a></dt> 
    31     <dd>おそらく4つの中では最も使われていないと思います。しかしパフォーマンスでは一番です。URLが「パターン」を要求しない場合や、変数を解析しない場合に使用することができます。例えば、&quot;/login/SpotSec&quot; や &quot;/login/key/value&quot; などを必要としないなら &quot;/login&quot; にできます。。</dd> 
     31    <dd>おそらく4つの中では最も使われていないと思います。しかしパフォーマンスでは一番です。URLが「パターン」を要求しない場合や、変数を解析しない場合に使用することができます。例えば、&quot;/login/hoge&quot; や &quot;/login/key/value&quot; などを必要としないなら &quot;/login&quot; にできます。。</dd> 
    3232</dl> 
    3333 
    3434<h3>Zend_Controller_Router_Route</h3> 
    35 <P>&quot;http://yoursite.com/accounts/auth/login&quot; を &quot;http://yoursite.com/login&quot; と &quot;http://yoursite.com/login/SpotSec&quot; にマッピングしてみます。</p> 
     35<P>&quot;http://yoursite.com/accounts/auth/login&quot; を &quot;http://yoursite.com/login&quot; と &quot;http://yoursite.com/login/hoge&quot; にマッピングしてみます。</p> 
    3636<p>まず最初に bootstrap で ルーターオブジェクトを取得する必要があります。フロントコントローラで以下のようにします。</p> 
    3737<pre name="code" class="php"> 
     
    5252</pre> 
    5353 
    54 <p>&quot;login/:username&quot; の :username は &quot;login&quot; 以下の &quot;/login/SpotSec&quot; などの場合を定義します。</p> 
    55 <p>&quot;/login/username/SpotSec&quot; へのショートカットです。 &quot;SpotSec&quot; は $this-&gt;getRequest()-&gt;getParam(&apos;username&apos;); を使うとコントローラーから取り出せます。</p> 
     54<p>&quot;login/:username&quot; の :username は &quot;login&quot; 以下が &quot;/login/hoge&quot; などの場合を定義します。これは &quot;/login/username/hoge&quot; へのショートカットです。 &quot;hoge&quot; は $this-&gt;getRequest()-&gt;getParam(&apos;username&apos;); を使うとコントローラーから取り出せます。</p> 
    5655 
    57 <p>アスタリスク 「*」 はどんな key/value にも当てはまるので こんなふうにもマッチします。(&quot;/login/SpotSec/key/value/key/value&quot;)</p> 
     56<p>アスタリスク 「*」 はどんな key/value にも当てはまるので こんなふうにもマッチします。(&quot;/login/hoge/key/value/key/value&quot;)</p> 
    5857 
    5958<p>次はデフォルトの配列です。この配列はルーティングがどこに位置するのか、そして &quot;username&quot; のようなデフォルト変数が何に等しいかを定義します。また、URLに &quot;username&quot; が含まれている場合と含まれていない場合の定義もします。もし &apos;username&apos; =&gt; null が定義されていない場合、 &quot;http://yoursite.com/login&quot; は404エラーを返します。しかし &apos;username&apos; =&gt; null が定義されていれば &quot;http://yoursite.com/login&quot; にアクセスできます。</p> 
    6059 
    61 <p>最後の配列はオプションです。しかし &quot;login/SpotSec&quot; で &quot;SpotSec&quot; が文字列や数値かを確認したい場合役立ちます。この配列のファーマットは &apos;key&apos; =&gt; &apos;regexp&apos; です。<br /> 
     60<p>最後の配列はオプションです。しかし &quot;login/hoge&quot; で &quot;hoge&quot; が文字列や数値かを確認したい場合役立ちます。この配列のファーマットは &apos;key&apos; =&gt; &apos;regexp&apos; です。<br /> 
    6261(原文にはテストしていないと書いてあるので要確認 <a href="http://framework.zend.com/manual/ja/zend.controller.router.html#zend.controller.router.routes.standard.variable-requirements">7.5.6.1.2. 変数の制約</a>) (試してみたらたぶんうまくいってました)</p> 
    6362 
    64 <p>The result? http://yoursite.com/login || http://yoursite.com/login/SpotSec || http://yoursite.com/login/SpotSec/lang/en</p> 
     63<p>The result? http://yoursite.com/login || http://yoursite.com/login/hoge || http://yoursite.com/login/hoge/lang/en</p> 
    6564 
    6665<h3>Using Zend_Config to Define Routes</h3> 
     
    109108</pre> 
    110109 
    111 <p>(e.g. http://yoursite.com/login/hogera/aaa/bbb にアクセスした場合)</p> 
     110<p>(e.g. http://yoursite.com/login/hoge/aaa/bbb にアクセスした場合)</p> 
    112111<pre name="code" class="php"> 
    113112    string(5) " 
     
    115114    array(6) { 
    116115      ["username"]=> 
    117       string(6) "hogera" 
     116      string(6) "hoge" 
    118117      ["aaa"]=> 
    119118      string(3) "bbb"