Php/ethnaメモ
提供: 初心者エンジニアの簡易メモ
目次
ethnaメモ
インストール
$ pear channel-discover pear.ethna.jp $ pear update-channels $ pear install -a ethna/ethna
プロジェクト作成
phpインストールdirに移動
$ cd php-5.2.6
ethnaフォルダにsampleプロジェクト作成(フォルダは作成されている必要がある)
$ ethna add-project $ ethna add-project -b=d:/home/ethna sample
アンインストール
$ pear uninstall ethna/ethna
インストールプログラムの位置
D:\php-5.2.6\PEAR\Ethna
wwwルート
http://localhost/ethna/sample/www/
スケルトン作成
ethna add-action *** ethna add-view -t ***
記述メモ
actionはapp/actionへ記述する
actionとviewとの橋渡しは以下のようにする
$this->af->setApp("hoge", "piyo"); $this->af->getApp("hoge"); {$app.hoge}
form値は以下のように取得可能
$this->af->get("hoge"); {$form.hoge}
テンプレートに記載された$formはHTMLエスケープされている。 formはformクラスに定義しないと使用・表示できない。
入力エラー判定
if ($this->af->validate() > 0) { return 'login'; }
prepareメソッドに上記コードを入れることで↓のエラーが表示される。
テンプレートエラー表示
{if count($errors)} {foreach from=$errors item=error} {$error} {/foreach} {/if}
共通ロジックの書き方
マネージャーを作成し
$ ethna add-app-manager hoge
App_Controller.phpに以下追加
require_once 'Sample_HogeManager.php';
Actionに以下追加
$hoge = $this->backend->getManager('hoge');