Zend_Http_Cookie を使ってみる。

アクション内で。

<?php
		$name		= 'example';					//cookie name(ex 'PHPSESSID')
		
		$value = $this->getRequest()
						->getCookie($name);
		
		//init or cout up
		if(is_null($value)){
			$value = 0;
		}else{
			$value = (int)$value + 1;
		}
		
		
		$domain		= $this->getRequest()
						->getServer('SERVER_NAME');	//cookie domain
		$expires	= time() + 7200;				//expires for cookie
		$path	 	= '/';							//cookie path
		
		$cookie = new Zend_Http_Cookie($name, $value, $domain, $expires, $path);
		$this->getResponse()->setHeader('Set-Cookie',$cookie->__toString());
		
		$this->view->assign('value',$value);

取得は

<?php
$this->getRequest()->getCookie($name);

設定は

<?php
$this->getResponse()->setHeader('Set-Cookie',$cookie->__toString());


でとりあえず動いたけど、有効期限とか出力されてないっぽい。

もう普通に setcookie 使った方が早いオチ。

<?php
//取得
$value = $this->getRequest()->getCookie($name);
		
//設定
setcookie($name,$value,$expires,$path);