CakePHP の app スケルトンは、組み込みの REPL (Read Eval Print Loop) を備えており、 このことで CakePHP やアプリケーションがインタラクティブ・コンソール内で探索しやすくなります。 以下のようにするとインタラクティブ・コンソールを使い始めることができます。
$ bin/cake console
これは、アプリケーションを自動実行し、インタラクティブコンソールを開始します。 この時点で、アプリケーションコードを対話的に実行したり、 アプリケーションのモデルを利用してクエリーを実行することができます。
$ bin/cake console
Welcome to CakePHP v3.0.0 Console
---------------------------------------------------------------
App : App
Path: /Users/mark/projects/cakephp-app/src/
---------------------------------------------------------------
>>> $articles = Cake\ORM\TableRegistry::getTableLocator()->get('Articles');
// object(Cake\ORM\Table)(
//
// )
>>> $articles->find()->all();
アプリケーションが自動実行されたら、REPL を利用してルーティングを試すこともできます。
>>> Cake\Routing\Router::parse('/articles/view/1');
// [
// 'controller' => 'Articles',
// 'action' => 'view',
// 'pass' => [
// 0 => '1'
// ],
// 'plugin' => NULL
// ]
URL 生成を試すこともできます。
>>> Cake\Routing\Router::url(['controller' => 'Articles', 'action' => 'edit', 99]);
// '/articles/edit/99'
REPL を終了するには、 CTRL-C
を使用するか、あるいは exit
と入力してください。