PHPフレームワークのZendを使用している。
最近やっと日本語マニュアルが整備されたのだが、
とある事でドハマって解決したのでご報告。
Zend_Auth
という便利な認証クラスがある。
認証結果を独自のストレージクラスに格納し、
getIdentity()
にてIDを取得できる。
マニュアルにはID以外のデータもストレージに格納できるとあり、
実際できるのだが、ここで困ったことが発生する。
getIdentity()
の値が変わってしまうのだ。
通常はString型でユーザーIDが返ってくるだけだが、
上記のマニュアル通りにすると、stdClass型で返って来ちゃうのである。
というか、格納した型で値が返ってきてしまう。
配列を格納すれば配列が返ってくる。
$result = $this->_auth->authenticate($adapter); if ($result->isValid()) { $storage = $this->_auth->getStorage(); // DbTable を使用して認証。結果をストレージ。 // でもこれやっちゃうと... $storage->write($adapter->getResultRowObject(array( 'username', 'real_name', ))); } // これがダメになる。 // $username = $this->_auth->getIdentity(); // こーしないといけない。 $username = $this->_auth->getIdentity()->username;
マニュアルにしっかり書いとけゴルアあああ。
数時間ムダにしたぞ。くっそおおお。
Warning: getimagesize(http://cdn.myfonts.com/s/st/ss/a3/161699.gif): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/fmstudio/www/main/mf.php on line 11

この書体は FF Plus Sans — 欧文フォント買うなら MyFonts