facebook twitter hatena line email

「Php/zend framework/技術メモ」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「==APPLICATION_PATH変更== .htaccessの以下を変更 SetEnv APPLICATION_ENV development ==エスケープ処理== <?php print $this->escape($this->test);?> ==ビュ...」)
 
(リクエスト処理)
行22: 行22:
  
 
  // 以下も同意
 
  // 以下も同意
  $req = $this->getRequest();
+
  print $this->getRequest()->controller; // cont1
$req->controller; // cont1
+
 
 +
forwardした先で取得したい場合は以下のように
 +
print $this->_request->getControllerName();
 +
print $this->_request->getActionName();
  
 
==リクエストの存在チェック==
 
==リクエストの存在チェック==

2016年2月28日 (日) 13:59時点における版

APPLICATION_PATH変更

.htaccessの以下を変更

SetEnv APPLICATION_ENV development

エスケープ処理

<?php print $this->escape($this->test);?>

ビュー無効化

$this->_helper->viewRenderer->setNoRender(true);

ビュー変更

$this->render("test");
// コントローラー変更
$this->render("test/test", null, true); // test/test.phtmlをみる

リクエスト処理

http://~/cont1/act1/page/2?id=1の場合

print $this->_request->controller; // cont1
print $this->_request->action; // act1
print $this->_request->page;  // 2
print $this->_request->id; // 1
// 以下も同意
print $this->getRequest()->controller; // cont1

forwardした先で取得したい場合は以下のように

print $this->_request->getControllerName();
print $this->_request->getActionName();

リクエストの存在チェック

$this->getRequest()->isPost()

スーパーグローバル対応メソッド

$this->getRequest()->getQuery()    $_GET
$this->getRequest()->getPost()    $_POST
$this->getRequest()->getCookie()  $_COOKIE
$this->getRequest()->getServer()  $_SERVER
$this->getRequest()->getEnv()    $_ENV

Iniクラスの使い方

app.ini

[cateini]
ini1=hoge
ini2=fuga

actionなどに

require_once 'Zend/Config/Ini.php';
$ini = new Zend_Config_Ini('../configs/app.ini', 'cateini');
print $ini->ini1; // hoge

キャメルケースのアクションにアクセス

~/controller1/test-testにアクセスするとtestTestAction()へ渡る

forward先でaction名を取得

echo $this->getRequest()->getActionName();

staticをグローバル変数のように扱う

class Test
{
  static public $i = 0;
}
Test::$i++;
print Test::$i;