}
// Cut footnotes and tags
- if ($strip === TRUE)
- $str = strip_htmltag(make_link(preg_replace($NotePattern, '', $str)));
-
+// if ($strip === TRUE) $str = strip_htmltag(make_link(preg_replace($NotePattern, '', $str)));
+ if ($strip === TRUE) $str = strip_htmltag(make_link(preg_replace_callback($NotePattern, create_function('$matches','return;'), $str))); // PHP5.5用修正
+
return $id;
}
$InterWikiName = '(\[\[)?((?:(?!\s|:|\]\]).)+):(.+)(?(1)\]\])';
// 注釈
-$NotePattern = '/\(\(((?:(?>(?:(?!\(\()(?!\)\)(?:[^\)]|$)).)+)|(?R))*)\)\)/ex';
+/*$NotePattern = '/\(\(((?:(?>(?:(?!\(\()(?!\)\)(?:[^\)]|$)).)+)|(?R))*)\)\)/ex';*/
+$NotePattern = '/\(\(((?:(?>(?:(?!\(\()(?!\)\)(?:[^\)]|$)).)+)|(?R))*)\)\)/'; // PHP5.5以降用修正
/////////////////////////////////////////////////
// 初期設定(ユーザ定義ルール読み込み)
list($ltime, $stime, $count, $url, $enable) = $arr;
// 非ASCIIキャラクタ(だけ)をURLエンコードしておく BugTrack/440
- $e_url = htmlspecialchars(preg_replace('/([" \x80-\xff]+)/e', 'rawurlencode("$1")', $url));
+ //$e_url = htmlspecialchars(preg_replace('/([" \x80-\xff]+)/e', 'rawurlencode("$1")', $url));
+ $e_url = htmlspecialchars(preg_replace_callback('/([" \x80-\xff]+)/', create_function('$matches','return rawurlencode($matches[1]);'), $url)); // PHP5.5用対応
$s_url = htmlspecialchars(mb_convert_encoding(rawurldecode($url), SOURCE_ENCODING, 'auto'));
$lpass = get_passage($ltime, FALSE); // 最終更新日時からの経過時間