バックアップ作成時の処理をもう少しだけ速く(クリンナップねた)

  • ページ: BugTrack2
  • 投稿者: 名無しさん
  • 優先順位: 低
  • 状態: 却下
  • カテゴリー: その他
  • 投稿日: 2008-02-24 (日) 21:39:01
  • バージョン:

メッセージ

make_backup の中で、preg_replace を使って文字列の最後の改行の数を、x個から1個にする処理をしている部分があります。これは、(勘違いがなければ) rtrim で等価の処理にできると思いますがどうでしょうか?

それと正規表現の部分で同じパターンなのに、get_backup の中ではシングルクォートで囲っているのに、make_backup の中ではダブルクォートで囲っているのがあるので、これも修正案に入れておきます。

  • lib/backup.php (r1.12) make_backup 関数内
     			unset($backups[$age]);
     		}
    -		$strout = preg_replace("/([^\n])\n*$/", "$1\n", $strout);
    +		$strout = rtrim($strout, "\n") . "\n";
     
     		// Escape 'lines equal to PKWK_SPLITTER', by inserting a space
    -		$body = preg_replace('/^(' . preg_quote(PKWK_SPLITTER) . "\s\d+)$/", '$1 ', get_source($page));
    +		$body = preg_replace('/^(' . preg_quote(PKWK_SPLITTER) . '\s\d+)$/', '$1 ', get_source($page));
     		$body = PKWK_SPLITTER . ' ' . get_filetime($page) . "\n" . join('', $body);
    -		$body = preg_replace("/\n*$/", "\n", $body);
    +		$body = rtrim($body, "\n") . "\n";
     
     		$fp = _backup_fopen($page, 'wb')

関連

BugTrack/779#v3721bed




トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-02-24 (日) 21:39:01
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.167 sec.

OSDN