読者です 読者をやめる 読者になる 読者になる

webネタ

技術系ブログ。web系SE。1988。♂。@rhong_

ZendFrameworkでGETやPOSTなど、様々なパラメータを取得する方法

ZendFrameworkで基本の、アクションでGETやPOSTなどを取得する方法のまとめメモ。

GETパラメータを取得する場合

通常の場合

$value = $_GET['test'];

ZendFrameworkの場合

$this->_request->getQuery('token');

$this->_requestは、Zend_Controller_Request_Httpです。
$this->_requestは、$this->getRequest()でもokです。

POSTパラメータを取得する場合

通常の場合

$value = $_POST['test'];

ZendFrameworkの場合

$this->_request->getPost('token');

環境変数を取得する場合

通常の場合

$value = $_SERVER['REQUEST_URI'];

ZendFrameworkの場合

$this->_request->getServer('REQUEST_URI');

クッキーを取得する場合

通常の場合

$value = $_COOKIE['SID'];

ZendFrameworkの場合

$this->_request->getCookie('SID');

HTTPメソッドの判定

GETかどうか
$this->_request->isGet();
POSTかどうか
$this->_request->isPost();
PUTかどうか
$this->_request->isPut();
DELTETEかどうか
$this->_request->isDelete();
HEADかどうか
$this->_request->isHead();
OPTIONかどうか
$this->_request->isOptions();

特殊なアクセスの判定

Ajaxからか
$this->_request->isXmlHttpRequest();
Flashからか
$this->_request->isFlashRequest();
SSLからか
$this->_request->isSecure();

クライアントのIPアドレス取得

$this->_request->getClientIp();

ロードバランサーを経由している場合でも、実際のIPが取得できる。
$_SERVER['HTTP_X_FORWARDED_FOR']と$_SERVER['HTTP_CLIENT_IP']があるか調べてくれる。
なければ$_SERVER['REMOTE_ADDR']を返す。