「PHP」カテゴリーアーカイブ

Mantisの変更履歴(Change Log)を表示する

「システム管理」>「プロジェクト管理」でプロジェクトを選択して、「バージョン」を登録する。
すると、チケット登録で「製品バージョン」を選択できるようになる。
そして、そのチケットのステータス更新時(解決済みにしたり完了するとき)の画面で、「修正済みバージョン」を選択できるようになる。
検索結果や印刷画面、CSV出力では、以下のようにconfig_inc.phpで、表示するカラムを設定する変数に、'fixed_in_version'を追加すれば、表示されるようになる。

<?php
...
$g_view_issues_page_columns = array ( 'selection', 'edit', 'priority', 'id', 'reporter_id', 'sponsorship_total', 'bugnotes_count', 'attachment', 'category', 'severity', 'status', 'fixed_in_version', 'last_updated', 'summary' );
$g_print_issues_page_columns = array ( 'selection', 'priority', 'id', 'reporter_id', 'sponsorship_total', 'bugnotes_count', 'attachment', 'category', 'severity', 'status', 'fixed_in_version', 'last_updated',  'summary' );
$g_csv_columns = array ( 'id', 'project_id', 'reporter_id', 'handler_id', 'priority', 'severity', 'reproducibility', 'version', 'projection', 'category', 'date_submitted', 'eta', 'os', 'os_build', 'platform', 'view_state', 'last_updated', 'summary', 'status', 'resolution', 'fixed_in_version', 'duplicate_id' );
...

MacPortsでxdebugをインストール

$ sudo port install php5-xdebug
Password:
--->  Fetching php5-xdebug
--->  Attempting to fetch xdebug-2.0.3.tgz from http://www.xdebug.org/files/
--->  Verifying checksum(s) for php5-xdebug
--->  Extracting php5-xdebug
--->  Configuring php5-xdebug
--->  Building php5-xdebug with target all
--->  Staging php5-xdebug into destroot
--->  Installing php5-xdebug 2.0.3_0
    ***************************************************************************
    * To enable the xdebug extension in php, add or edit the following
    * lines in /opt/local/etc/php.ini:
    *
    * zend_extension="/opt/local/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"
    *
    * Once the extension is installed, you can get a list of the available
    * configuration settings with the following command:
    *
    * % php --ri xdebug
    *
    * For more information and details about configuration settings, see
    * http://www.xdebug.org/docs/
    ***************************************************************************
--->  Activating php5-xdebug 2.0.3_0
--->  Cleaning php5-xdebug

php.iniに以下を追加。

zend_extension="/opt/local/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"

Leopardにmacportsでphp5をインストール

$ sudo port install php5 +postgresql +apache2 +pear
--->  Fetching curl
--->  Attempting to fetch curl-7.18.2.tar.bz2 from http://curl.haxx.se/download/
--->  Verifying checksum(s) for curl
--->  Extracting curl
--->  Configuring curl
--->  Building curl with target all
--->  Staging curl into destroot
--->  Installing curl 7.18.2_0
--->  Activating curl 7.18.2_0
--->  Cleaning curl
--->  Fetching gd2
--->  Attempting to fetch gd-2.0.35.tar.bz2 from http://www.libgd.org/releases/
--->  Verifying checksum(s) for gd2
--->  Extracting gd2
--->  Applying patches to gd2
--->  Configuring gd2
--->  Building gd2 with target all
--->  Staging gd2 into destroot
--->  Installing gd2 2.0.35_1
--->  Activating gd2 2.0.35_1
--->  Cleaning gd2
--->  Fetching libmcrypt
--->  Attempting to fetch libmcrypt-2.5.8.tar.bz2 from http://downloads.sourceforge.net/mcrypt
--->  Verifying checksum(s) for libmcrypt
--->  Extracting libmcrypt
--->  Configuring libmcrypt
--->  Building libmcrypt with target all
--->  Staging libmcrypt into destroot
--->  Installing libmcrypt 2.5.8_0
--->  Activating libmcrypt 2.5.8_0
--->  Cleaning libmcrypt
--->  Fetching mhash
--->  Attempting to fetch mhash-0.9.9.tar.bz2 from http://downloads.sourceforge.net/mhash
--->  Verifying checksum(s) for mhash
--->  Extracting mhash
--->  Configuring mhash
--->  Building mhash with target all
--->  Staging mhash into destroot
--->  Installing mhash 0.9.9_0
--->  Activating mhash 0.9.9_0
--->  Cleaning mhash
--->  Fetching php5
--->  Attempting to fetch php-5.2.6.tar.bz2 from http://www.php.net/distributions/
--->  Verifying checksum(s) for php5
--->  Extracting php5
--->  Configuring php5
--->  Building php5 with target all
--->  Staging php5 into destroot
Warning: php5 requests to install files outside the common directory structure!
--->  Installing php5 5.2.6_1+apache2+macosx+pear
If this is your first install, you might want
cd /opt/local/apache2/modules
/opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
* copy  /opt/local/etc/php.ini-dist to  /opt/local/etc/php.ini
--->  Activating php5 5.2.6_1+apache2+macosx+pear
--->  Cleaning php5

variantsの+postgresqlが間違ってた。
variantsを確認。

$ port variants php5
php5 has the variants:
	universal
	darwin_6
	darwin_7
	macosx
	apache: for Apple Apache
	apache2: for current Apache
	fastcgi: add fastcgi binary
	gmp: Add GNU MP functions
	dbase: Add dBase file format support
	imap: enable operation with IMAP protocol
	pspell: Add pspell spell-checking functions
	tidy: add Tidy support
	mssql: add support for MS-SQL server
	snmp: use Apple snmp
	macports_snmp: use MacPorts snmp
	mysql3: build MySQL 3 support
	mysql4: build MySQL 4 support
	mysql5: build MySQL 5 support
	oracle: Add Oracle oci8 database functions with the Oracle Instant Client
	postgresql82: provide postgresql82 support
	postgresql83: provide postgresql83 support
	sqlite: build sqlite support
	ipc: build IPC support
	pcntl: provide process control
	pear: add pear stuff
	readline: Add GNU readline functions
	sockets: Add socket communication functions
	t1lib: Add PostScript Type 1 font support with t1lib

正しくは、+postgresql83。
改めてインストール。ついでにmysql5とsqliteを追加。(MySQL5を先にインストールしておく。)

$ sudo port install php5 +postgresql83 +mysql5 +sqlite +apache2 +pear
--->  Fetching mysql5
--->  Attempting to fetch mysql-5.0.67.tar.gz from http://distfiles.macports.org/mysql5
--->  Verifying checksum(s) for mysql5
--->  Extracting mysql5
--->  Configuring mysql5
--->  Building mysql5 with target all
--->  Staging mysql5 into destroot
--->  Installing mysql5 5.0.67_0
--->  Activating mysql5 5.0.67_0
--->  Cleaning mysql5
--->  Fetching php5
--->  Verifying checksum(s) for php5
--->  Extracting php5
--->  Configuring php5
--->  Building php5 with target all
--->  Staging php5 into destroot
Warning: php5 requests to install files outside the common directory structure!
--->  Installing php5 5.2.6_1+apache2+macosx+mysql5+pear+postgresql83+sqlite
If this is your first install, you might want
cd /opt/local/apache2/modules
/opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
* copy  /opt/local/etc/php.ini-dist to  /opt/local/etc/php.ini
--->  Activating php5 5.2.6_1+apache2+macosx+mysql5+pear+postgresql83+sqlite
Error: Target org.macports.activate returned: Image error: Another version of this port (php5 @5.2.6_1+apache2+macosx+pear) is already active.
Error: Status 1 encountered during processing.

最初のインストールが残っていたので、activateできなかったみたい。
いったんアンインストールしてインストールしなおす。

$ sudo port uninstall php5
--->  The following versions of php5 are currently installed:
--->  	php5 @5.2.6_1+apache2+macosx+mysql5+pear+postgresql83+sqlite
--->  	php5 @5.2.6_1+apache2+macosx+pear (active)
Error: port uninstall failed: Registry error: Please specify the full version as recorded in the port registry.

php5が複数あるからフルで指定しないとアンインストールできないらしい。

$ sudo port uninstall php5 @5.2.6_1+apache2+macosx+pear
--->  Deactivating php5 5.2.6_1+apache2+macosx+pear
--->  Uninstalling php5 5.2.6_1+apache2+macosx+pear

アンインストールできたので、インストールしなおす。

$ sudo port install php5 +postgresql83 +mysql5 +sqlite +apache2 +pear
--->  Activating php5 5.2.6_1+apache2+macosx+mysql5+pear+postgresql83+sqlite
--->  Cleaning php5

インストールは終わっていたようで、activateだけされた。
インストール時のメッセージにある通り、apxsでapacheにphp5モジュールを追加する。

$ cd /opt/local/apache2/modules/
$ sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
Password:
[activating module `php5' in /opt/local/apache2/conf/httpd.conf]

添付されているサンプルからphp.iniをコピー。

$ sudo cp /opt/local/etc/php.ini-dist /opt/local/etc/php.ini

/opt/local/apache2/conf/httpd.confに以下を追加。

Include conf/extras-conf/mod_php.conf

手動でPDTプロジェクトを設定する方法

IRC FAQ - Eclipsepedia
.projectファイルに以下のセクションを追加する。

<buildSpec>
    <buildCommand>
        <name>org.eclipse.php.core.PhpIncrementalProjectBuilder</name>
        <arguments></arguments>
    </buildCommand>
    <buildCommand>
        <name>org.eclipse.wst.validation.validationbuilder</name>
        <arguments></arguments>
    </buildCommand>
</buildSpec>
<natures>
    <nature>org.eclipse.php.core.PHPNature</nature>
</natures>

Using FastCGI to Host PHP Applications on IIS 7.0

IIS.net : Learn IIS7: Using FastCGI to Host PHP Applications on IIS 7.0: Running PHP Applications: Hosting Applications on IIS 7.0: Developing on IIS 7.0
IIS7.0にはFastCGIがビルトインされている。IISのFastCGIを使用してPHPアプリケーションを動作させるチュートリアル。
Windows Vistaで、「プログラムと機能」でCGIをチェックしていても、モジュールにFastCGIModuleが組み込まれていなかった。いったんCGIのチェックを外して更新してから、再度CGIにチェックを入れると、FastCGIがモジュール一覧に入った。CGIを有効にした状態でSP1を適用したからかもしれない。