概要
Webアプリの作成言語としては簡易なためよく利用されている。
公式サイト
関連サイト
インストール
Mac OS X
./configure --with-zlib-dir=/usr/local --with-libjpeg=/sw --with-libtiff=/sw --with-libpng=/sw --with-gd --with-pgsql=/sw --with-mysql=/usr/local/mysql --with-xml --with-dom=/sw --with-apxs2 --enable-mbstring --with-tiff-dir=/sw --with-png-dir=/sw
Apache起動時Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe.}}]のエラーが発生した場合{{{--enable-roxen-ztsを付与してコンパイルする
スレッドを無効にしたPHPを一回起動するとlibがキャッシュに確保されている場合があるので、キャッシュをクリアするかOSを再起動した方が無難。
Cent OS
sudo yum install httpd-devel.i386 sudo yum install libc-client-devel.i386 sudo yum install mysql-devel.i386 sudo yum install unixODBC-devel.i386 sudo yum install postgresql-devel.i386 sudo yum install aspell-devel.i386 sudo yum install net-snmp-devel.i386
./configure --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu --target=i386-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info --cache-file=../config.cache --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-force-cgi-redirect --disable-debug --enable-pic --disable-rpath --enable-inline-optimization --with-bz2 --with-db4=/usr --with-curl --with-exec-dir=/usr/bin --with-freetype-dir=/usr --with-png-dir=/usr --with-gd=shared --enable-gd-native-ttf --without-gdbm --with-gettext --with-ncurses=shared --with-gmp --with-iconv --with-jpeg-dir=/usr --with-openssl --with-png --with-pspell --with-xml --with-expat-dir=/usr --with-dom=shared,/usr --with-dom-xslt=/usr --with-dom-exslt=/usr --with-xmlrpc=shared --with-pcre-regex=/usr --with-zlib --with-layout=GNU --enable-bcmath --enable-exif --enable-ftp --enable-magic-quotes --enable-sockets --enable-sysvsem --enable-sysvshm --enable-track-vars --enable-trans-sid --enable-yp --enable-wddx --with-pear=/usr/share/pear --with-imap=shared --with-imap-ssl --with-kerberos --with-ldap=shared --with-mysql=shared,/usr --with-pgsql=shared --with-snmp=shared,/usr --with-snmp=shared --enable-ucd-snmp-hack --with-unixODBC=shared,/usr --enable-memory-limit --enable-shmop --enable-calendar --enable-dbx --enable-dio --enable-mbstring=shared --enable-mbstr-enc-trans --enable-mbregex --with-mime-magic=/usr/share/file/magic.mime --with-apxs2=/usr/sbin/apxs
PEAR
pear upgrade PEAR
設定
自宅サーバー(Windows+Apache)へのPHPインストール
バージョン情報隠蔽。バージョン隠蔽しても無意味ですけどね。
php.ini -- expose_php=Off display_errors=Off
最適化
利用方法
eclipse
xored software - TruStudio - PHP IDE and Python IDE built on Eclipse
TruStudio Japan - PHP & Python 統合開発ツール on Eclipse
koebi.net KoebiStudio Express Edition
テンプレートエンジン
フレームワーク
Slim Framework:マイクロフレームワーク
Homepage - Twig - The flexible, fast, and secure PHP template engine:テンプレートエンジン
Eloquent:ORM
- Mojavi
- guesswork
HTML_QuickForm : いまいち
DB_DataObject
Do You PHP? - Phing2 - PHP版Ant for PHP5
symfony - open-source PHP5 web framework
Framework Comparison Chartフレームワーク比較
Blog::koyhoge - PHPフレームワークのリスト
PHPで、どのフレームワークが一番?:phpspot開発日誌
CMS researcher - PHPのフレームワークについて考える
GIGAZINE - PHPのスキルを上げる100以上のプレゼンテーション資料
参考書籍