PHP

CodeIgniter の Cookie パス

PHP

どうも localhost な環境で Cookie パスを指定すると、Cookie の中身が正しくとれないみたい。なんでだ?PHP のせい?これだから。。。

CodeIgniter のログレベル

PHP

Debug よりも Info の方がレベルが低いなんてありえない。。。

PHP5.3のDeprecatedエラー

PHP

PHP5.3からDeprecatedエラーが出て困る。PHP5.3だと CakePHPで Deprecatedエラーが出まくる問題の対処方法

XAMPP

PHP

いつの間にかPHP4がサポート外になってる。1.6まではサポートしてたと思うんだけどな。

ApacheをtarballからインストールしたときのPCRE

ApacheをtarballからインストールするとデフォルトではPCREがバンドルされたPCRE5が使用されてしまいます。まぁ普通は困らないんだけど、PHPでpreg_matchをUTF-8なんかで使ってるとワーニングが出てきます。 PCREのUTF8対応のオプションがどうも有効になって…

PHPTAL

PHP

ただCakePHPやAkelosなどが出てきた最近はめっきりテンプレートエンジンを使わなくなってきました。 そんななかPHP5向けのテンプレートエンジンを発見したので、試し食いです。シンタックスはZope Page Templates syntaxを模して実装してるみたいです。 とい…

FPDFで作成したPDFファイルのファイル名

PHP

FPDF(MBFPDF、MBFPDI)を使ってインラインで作成したPDFファイルのファイル名ですが、FPDFのドキュメントを読む限り $pdf = new MBFPDF(); $pdf->output('hogehoge.pdf') と書いてあげると良いようですが、ブラウザ上のAcrobatReaderから保存をすると、リクエ…

OpenID Component

OpenIDのOP側をCakePHPで実装をしてみようと思い、コンポーネントがないかと思って検索したらなにやら発見。CakePHP and OpenIDで読んでみると、どうもRPの実装しかない。う〜ん。やっぱりそうだろうなぁ。 OPを大衆が作れるんだろうけど、そもそもそんなも…

Akelos PHP Framework

PHP

Javaに続いてFramework乱立状態のPHPですが、またもや新しいのがでました。Akelos PHP Frameworkrailsをphpにportingしたようで、railsとほとんど一緒です。 それどころかrails1.xではpluginだったローカライズもデフォルトで出来ます。(CakePHPも1.2ではデ…

function __($singular, $return = false){}

「cake bake」でviewを作ってみるとなんやらやたらとこのfunctionが入ってます。なにかなぁ〜と思ってみると文字の翻訳をしてくれるみたい。いわゆる国際化ってやつです。設定は簡単 app/config/core.phpに言語を設定。コードはhttp://www.loc.gov/standards…

OthAuth Notice Error @ PHP4

CakePHPの1.2がやっとこさbetaになったので、ぼつぼつと触り始めました。 1.2ではまともに動くValidatorやBehaviorなど1.1の頃から待ってた機能が追加されてます。で、そろそろrails並みにpluginなんか熟してきてるかなと言うことで、今回は認証機能をothAut…

PHP4でxmlのパース処理

PHP

PHP5はXMLと結構仲良しなんですが、PHP4はあんまり仲が良くないのでたまに困ります。 また仲の良くないなりにある関数、ライブラリが結構癖があって困る。ということで、以下試してみた物xml_parse_into_struct パースの仕方に癖(要素の中身と要素番号とが別…

PHP4でhttpsのURLをfopenで開く時

PHP

OpenSSLのモジュールが有効になっていることが前提だけど、PHP4ではどうもモジュールを有効にしても、OpenSSLが静的に組み込まれてないとエラーになるみたい。PHP5はそんなの関係なく普通にfopenで取得できる。Windows版のXAMPPでは静的コンパイルがされてな…

PHPSESSIONのガーベッジコレクション

PHP

PHPのセッションタイムアウトはphp.iniで設定されているsession.gc_maxlifetimeで秒設定できますが、そもそもガーベッジコレクションの起動タイミングがよく分からなかったので調べてみました。ガーベッジコレクションのメソッドがCallされるのは、session_s…

XAMPPでXDebugを有効にする。

PHP

XAMPPはデフォルトでいろんなextentionsがはいってるので結構便利。XDebugも例外ではなくはいってる。 でxdebugを有効にするには、php.iniのextentionのコメントを外すだけ。で動かしてみると PHP Warning: Xdebug MUST be loaded as a Zend extension in Un…

PHPUnit3.2.2

PHP

PHPUnitPHPのUnitTestフレームワークとして昔PEARにあったのが、なんか独立(?)してるみたい。昔試し損ねたので今回試してみました。 環境はXAMPPでPHP5。どうもPHP5でないとこのバージョンは動かないらしいので。 PHP4に対しては別途どこかで試したいと思い…

Pukiwikiのアップロードファイルサイズの制限を変える

PHP

増やしたい。 以下のphpの設定値を変える post_max_size upload_max_filesize 注意はpost_max_size>=upload_max_filesizeじゃないと意味がないこと位です。 pukiwikiの添付はattachプラグインで実装されているので、pukiwikiフォルダ/plugin/attach.inc.php…

PHPでmail()が使えるかどうかを確認する

PHP

echo '' | ./php -d sendmail_path="cat -"PHPが複数バージョンでインストールされている場合は、対象のバイナリをフルパスで書けばいいんじゃない。

PHP4 on CentOS4.4

PHP

CentOS4.4にPHPをインストール。 って大体OSのインストール時にサーバ設定にしておけばデフォルトの状態で入ってます。デフォルトの状態ではDBやマルチバイト系のモジュールが有効になっていないのでそのあたりを追加。 # yum list installed | grep php php…

PHP Framework

PHP

PHPでもWebApplicationのフレームワークが開発され出してからしばらく立ち乱立状態です。 どれがデファクトスタンダードになるかを見極めないと後で痛い目に会うのでまだ手探り状態なんでしょう。Having said that, here is my top 10 PHP MVC Frameworks:10…

XAMPP

Windows環境にWebシステムの環境を入れるのって以外とめんどくさいです。 そんなときは「XAMPP for Windows」以下のサーバアプリをIインストールしてくれます。 MySQL 5.0.18 Apache 2.2.0 PHP 5.1.1 phpMyAdmin 2.7.0 pl1あとへんなsmtp+popとかFileZilaのF…

mb_substrとmb_strcut

PHP

マルチバイト文字列の関数でちょっと便利そうだったので。 str="1234567890" mbstr(str, 0, 5) '12345' mb_strcut(str, 0, 5) '12'

APC-2.0

APC2.0でPHPにスクリプトキャッシュ機能を追加。 今はPECLの中に入っているのでPECLからダウンロード。■Install(tarballの中のINSTALL参照) $ tar zxvf APC-2[1].0.4.tgz $ cd APC-2.0.4 $ phpize $ ./configure --enable-apc $ make $ make installモジュー…

PHP Document

PHP

PHPのドキュメントを毎回ダウンロードするのもアレなので、CVSから取得し、ローカルでビルドするようにしました。 #cvs co phpdoc #cd phpdoc #cvs update -dP #cvs co phpdoc-ja-dir #autoconf #./configure --with-lang=jahtmlというdirの中にhtmlができて…

domxml_open_file

相対パスでのxmlファイル指定ではNGみたい > libxml2.5.4 libxml2.4.30ではいけててんけど・・・■そんな馬鹿なことはありませんでした。typoです。

PHPでUnicode

PHP

PHPでUnicodeを使う。 "Unicode"ではあかんくて"UTF-8"じゃないとダメみたい。

PHP4.3.6のインストール

PHP

■Compile & Install #./configure --with-apxs2=/usr/local/apache2/bin/apxs --without-mysql --with-dom --with-xml --enable-mbstring --enable-mbregex --enable-zend-multibyte --with-gd #make #make install ■Config httpd.confにModuleの設定を追加…