あーさーの備忘録

ゆっくり自由に生きてます

FuelPHPで日本語URLを扱う

FuelPHPって日本語URL使えるの?

FuelPHPは自動でURLからリクエストを処理するController、actionを指定します。その関係で、クラス名・メソッド名に日本語や%が使えない以上、日本語URLは扱えない、と思っていたのですが、routes.phpというConfigファイルを思い出しました。

結論を言うと、日本語URLは、できます!!

日本語URLを使う方法

APPPATH/config/routes.php

<?php
return array(
    '_root_'  => 'index',  // The default route
    '_404_'   => '404/index',    // The main 404 route
    'hello(/:name)?' => array('welcome/hello', 'name' => 'hello'),
    'テスト' => 'test/index',  // ←ここ追記
);

こんな感じで日本語と、それに対応するController名/action名を配列に追加すると、アクセスできちゃいます。

元のURLでアクセスしてきた人を弾く

URLの正規化のために、test/indexとアルファベットのURLでアクセスしてきた人を弾く方法は、Uriクラスを使うことで簡単にできます。詳しくはあまり興味が無いので書きません。

自分でさえ興味のない誰得な記事を書いてしまった……。