まず、cakephp の実行プロセスを見てみましょう (画像は百度百科から借用):
1: まず、サーバーが書き換えをサポートしていない仮想ホストである必要があります。リライトをサポートすると、cakephp が正常に動作しなくなります。
2: すべてのリクエストをcakephpフレームワークに送信し、フレームワークのルートを入力します。cakephpにはデフォルトの配布ルールのセットが付属しています(例: http://.../test/test、ルート設定はありません)。この場合、cakephp は test_controller コントローラーのテスト メソッドを自動的に実行します)。
ルートを構成することで、実行したいリクエストをコントローラーとメソッドに送信できます。構成は次のとおりです (app/config/routes.php):
Copyコード コードは次のとおりです:
Router::connect('/pages/*', array('controller' => 'test', 'action' = > 'index '));
コードをコピー コードは次のとおりです:
$this->test->find('all') ;
コードをコピーします コードは次のとおりです。
if ($this->uses !== null && $this->uses !== false) {
$merge[] = 'uses';
}
foreach ($merge as $var) {
if (isset($appVars[$var]) && !empty($appVars[$var]) && is_array($this) ->{$var})) {
if ($var !== 'uses') {
$normal = Set::normalize($this->gt;{$var}); $app = Set::normalize($appVars [$var]);
if ($app !== $normal) {
$this->{$var} = Set::merge($app) , $normal);
}
} else {
$this->{$var} = array_merge($this->{$var}, array_diff($appVars[$var], $ this->{$var})) ;
}
}
}