OSDN Git Service

MERGE: リビジョン1770のマージ。Backupクラスのクラス内コールバック型の修正
authorsakamocchi <o-takashi@sakamocchi.jp>
Fri, 20 Apr 2012 02:07:43 +0000 (11:07 +0900)
committersakamocchi <o-takashi@sakamocchi.jp>
Sat, 21 Apr 2012 02:40:22 +0000 (11:40 +0900)
以下のコミットでなされた修正を、より汎用的になるよう修正した。
commit: 931abe155be4800c949cd17915958837f617f507
FIX:インスタンスメソッドからクラスメソッドを呼び出す際に'self'を使用していたためバックアップが正常に作成されない問題を修正

PHP5のコールバック型(PHP5.4からはコーラブル型に改称)では、selfキーワードを用いてクラス内メソッドへコールバックすることができない。そのため、__CLASS__を用いることでスクリプトのプリプロセス時にクラス名に置き換え、実行時にはクラス名が参照されるようにした。

nucleus/libs/backup.php

index c3bd350..9147a71 100644 (file)
@@ -129,7 +129,7 @@ class Backup
 \r
                // dump all tables\r
                reset($tables);\r
-               array_walk($tables, array(self, 'dump_table'));\r
+               array_walk($tables, array(__CLASS__, 'dump_table'));\r
 \r
                if ( $gzip )\r
                {\r