めも帖

「めも帖」代わりにダラダラと書いていったり、めもしたりしているだけです。

PHP5

PHP4とPHP5でのXMLの処理について

PHP4とPHP5ではDOM XML関数について関数などが異なっていて、使い方が違うみたい。 さらに、PHP5にはSimpleXMLというのもあり、何を使ったらいいんだろう? PHP4とPHP5ともに使えるPHPのパーサはあるのかな? とりあえず、PHP5なのでSimpleXMLを使った処理を…

MeCab extensionでユーザ辞書を利用する

ユーザ辞書を登録して、MeCab上では利用できても、MeCab extensionから利用できませんでした。 なんでだろう?と思って調べてみたらユーザ辞書をMeCab extensionで指定してみると、読み込みできない旨のエラーが表示されてパーミッションを変更したら、大丈…

MeCab extensionで抽出した単語の出現数を出してみる

MeCab extensionの使い方がイマイチわからないまま。一つ一つ見て行ったりしてみました。 なにやら重要そうというか、サンプルにやたらあるのがnodeを利用した関数群。これなに? おそらく、単語毎に細かく処理をしたりすることが出来るようにしてあるんだと…

MeCab extensionはPHP4でも動きました

なんでだ〜、と思いながら最初からやったらきっちり動きました。 ポイントは、PHP.iniにextension = mecab.soを書き忘れていたこと...。 とにかくこれで、MeCabで遊べる(いや、仕事なんですけれど)環境ができました。形態素解析について、書かれた書籍とか…

MeCab extensionがPHP5だとすんなり動いた

PHP 5.2.1の環境でやってみた。すんなり動いた。なんで? 何か違ったか?php.iniには何もしていない。不思議。 tar xzf php_mecab-0.2.0.tgz cd php_mecab-0.2.0 phpize ./configure --with-php-config=/usr/local/php/bin/php-config --with-mecab=/usr/loc…

MeCab extensionをインストールしてみた...が、うまくいかない

PHP5の話じゃないけれど。 MeCabをPHPから利用するためにMeCab extensionというのを入れてみた tar xzf php_mecab-0.2.0.tgz cd php_mecab-0.2.0 phpize ./configure --with-php-config=/usr/local/bin/php-config --with-mecab=/usr/local/bin/mecab-config…

思い出してみた

PHPでYAMLを使用する - めも帖 チェック方法はどうしたらいいかなあ。

電話番号、郵便番号簡易チェック

電話番号 もう少し厳しくしたほうがいいよね。

freetypeのインストール

freetype cd /usr/local/src wget http://downloads.sourceforge.net/freetype/freetype-2.3.4.tar.gz?modtime=1176187387&big_mirror=0 tar xzf freetype-2.3.4.tar.gz cd freetype-2.3.4 mkdir -p /usr/local/include/freetype2/freetype/internal ./confi…

PHP4.4.2から5.2.2へのバージョンアップ

./configureは、phpinfo()で見たものをそのまま入れています。 cd /usr/local/src wget http://jp.php.net/get/php-5.2.2.tar.bz2/from/this/mirror tar jxvf php-5.2.2.tar.bz2 cd php-5.2.2 ./configure --enable-mbstring --enable-mbstr-trans --enable-…

phpMyAdminをインストールする

MySQL5.0とPHP4.4でphpMyAdminをインストールしたのですが、いくつかハマったのでメモ書き。 参考 MacOSXでサーバー稼業 : PHP4.3xとMySQL4.1xのパスワード互換性を解決しよう MacOSXでサーバー稼業 : PHP4.3xとMySQL4.1xのパスワード互換性を解決しよう2 イ…

Amazon

setLocale…

PEARのServices_Amazonをインストールする

PHP4.4でも大丈夫みたい。 pear install --alldeps Services_Amazon-0.7.0

少しづつだけれど

vimでコードがかけるようになって来たよ。

RSSの日付仕様

RFC822という形式らしい。なのだけれど、PHP4では、 strtotime("2007-04-02T18:45:00+09:00"); とやると、-1が返ってくる。でも、 print strtotime("2007-04-02T18:45:00"); // 1175564700が表示される とかやると、UNIX時間が表示されます。ええと、時間差…

めも

処理の流れ リクエストを受ける(MyApp/index.php) コントローラを生成する(MyApp/lib/Root.php) フレームワークに必要なのを起動する? Pageのコントローラを生成する(MyApp/lib/Index.php) Pageのコントローラから値が返る 出力(View.php) 参考:ht…

めも

文字コードを統一する 入力(なんでも) 出力(指定する) コード中 セッションの管理を考える Ethnaとかは独自にセッション管理を持っているけれど、これは必須?

連想配列の中身すべてに対して何かする

while( $keyname = key( $array ) ){ $array2[$keyname] = mb_convert_encoding($array[$keyname], $encode); next( $array ); }PHPのドキュメントを見ていると、keyの中に書いてあるのだけれど、「current()」という関数というのも混ぜて使っているので、cu…

WindowsにPHPをインストールする(3)

httpd.confのPHPIniDirという設定に書いたphp.iniの場所だと、phpinfoが実行されないけれど、ほかはきちんと反映されます。で、なぜだか、php.iniが存在しないディレクトリにあることになっていて、それが不明。なんだろう?php5ts.dllというのも関係あるみ…

PHPでiCalデータをパースする

PHPでiCalデータをパースしたいと思って、PerlならcpanのようにPEARを見たらない。 そこで、vCalで検索してみたら、「File_IMC」というのがありました。使うとなんだか、パースでていそうです。 ファイルだけではなくて、AppleのサイトにあるiCalデータを配…

WindowsにPHPをインストールする(2)

続きで、Pearをインストールしようとしたら、失敗。理由を調べてみた時の話。 PHPは、5.1系 go-pear.batを実行したらエラーが出る go-pear.pharにはバグがある http://pear.php.net/go-pear.pharからgo-pear.pharをダウンロード go-pear.batを実行 PEAR_ENV.…

WindowsにPHPをインストールする(1)

PHPをWindowsにインストール。5.2になると、ややこしいらしいので、5.1系で行います。PHP難しいなあ。ちなみに、Apacheは2.0 環境変数を書き換える php.iniを変更して、WINDOWSディレクトリに移動する extension=php_mbstring.dllextension_dir ="D:\usr\loc…

basenameという関数

地味だけれど、意外に使うんですよね。 string basename ( string path [, string suffix] ) PHPって、そいう関数が多いような気がします。 Perlも知らないのが多いんだろうけれど、PHPはもっと多く感じます。

進捗確認

クラスの命名と役割に混乱。 名前 用途 Contllort どのPageを表示させるのかコントロールする Page 処理を行いViewから表示させる ActionForm フォームの生成?定義値を保持する Request 入力された値の処理を行う。また、(処理させれた)値を保持する View…

Windows XPでPostgreSQLとPHP

php.iniの extension=php_pgsql.dllとしてコメントをはずす。この後に、Apahce再起動。

Smartyのブロック関数プラグイン

意外と複雑だけれど、出来てくると便利です。 しっかり、お勉強しないとなあ。

Smartyの出力結果を取得する

$smarty->fetch知らなかった。

Smartyのプラグイン:アプリケーションが持っているClassへのアクセス

考え直してみました。 Smartyのプラグインから、呼び出されたアプリケーションが持っているClassが使用可能でした。これで、アプリケーションが持つ値を呼び出すことにします。 これであれば、Smartyへの依存が少し減ります。

Smartyのプラグイン:Smarty自身が持つ値

SmartyのプラグインでSmarty自身が持つ値を直接触るのは、やはりまずいだろうか? $smarty->_tpl_vars <||

Smartyのプラグインディレクトリ

Smartyのプラグインディレクトリを追加することができるみたい。 $smarty->plugins_dir = array('plugins', 'my_plugins'); とりあえず、ファンクション(function)と、修正子のプラグインについては、出来そう。Ethnaには、ブロック関数プラグインがあって…