PHP ビルトインサーバーの利用¶でのコードでは、以下のように.htrouter.phpを指定して起動しますが。
これだと、webtools.phpやコントローラー、アクションにクエリ文字列を付与する時などにうまく動作してくれないので・・・
.htrouter.php
<?php
// これはphalconのマニュアルに記載
if (!file_exists(__DIR__ . '/' . $_SERVER['REQUEST_URI'])) {
$_GET['_url'] = $_SERVER['REQUEST_URI'];
}
return false;
以下のように書き換えるなどしてみました。
.htrouter.php
<?php
// これならwebtools.phpもOK
if (!file_exists(__DIR__ . '/' . $_SERVER['REQUEST_URI'])) {
list($url, $querys) = explode('?', $_SERVER['REQUEST_URI']);
$_GET['_url'] = $url;
if ($querys) {
$params = explode('&', $querys);
foreach ($params as $param) {
list($key, $value) = explode('=', $param);
$_GET[$key] = $value;
}
}
}
return false;