Make replacement strings backref safe without using \${1} so as to preserve php <= 4.2 compatible. Props mdawaffe. fixes #2774
git-svn-id: http://svn.automattic.com/wordpress/trunk@3855 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
c56e62f5c1
commit
f124c51107
|
@ -521,10 +521,11 @@ function format_to_post($content) {
|
|||
|
||||
function zeroise($number,$threshold) { // function to add leading zeros when necessary
|
||||
return sprintf('%0'.$threshold.'s', $number);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function backslashit($string) {
|
||||
$string = preg_replace('/^([0-9])/', '\\\\\\\\\1', $string);
|
||||
$string = preg_replace('/([a-z])/i', '\\\\\1', $string);
|
||||
return $string;
|
||||
}
|
||||
|
|
|
@ -30,12 +30,12 @@ function mysql2date($dateformatstring, $mysqlstring, $translate = true) {
|
|||
$datemeridiem = $wp_locale->get_meridiem(date('a', $i));
|
||||
$datemeridiem_capital = $wp_locale->get_meridiem(date('A', $i));
|
||||
$dateformatstring = ' '.$dateformatstring;
|
||||
$dateformatstring = preg_replace("/([^\\\])D/", "\${1}".backslashit($dateweekday_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])F/", "\${1}".backslashit($datemonth), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])l/", "\${1}".backslashit($dateweekday), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])M/", "\${1}".backslashit($datemonth_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])a/", "\${1}".backslashit($datemeridiem), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])A/", "\${1}".backslashit($datemeridiem_capital), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])D/", "\\1".backslashit($dateweekday_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])F/", "\\1".backslashit($datemonth), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])l/", "\\1".backslashit($dateweekday), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])M/", "\\1".backslashit($datemonth_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])a/", "\\1".backslashit($datemeridiem), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])A/", "\\1".backslashit($datemeridiem_capital), $dateformatstring);
|
||||
|
||||
$dateformatstring = substr($dateformatstring, 1, strlen($dateformatstring)-1);
|
||||
}
|
||||
|
@ -73,12 +73,12 @@ function date_i18n($dateformatstring, $unixtimestamp) {
|
|||
$datemeridiem = $wp_locale->get_meridiem(date('a', $i));
|
||||
$datemeridiem_capital = $wp_locale->get_meridiem(date('A', $i));
|
||||
$dateformatstring = ' '.$dateformatstring;
|
||||
$dateformatstring = preg_replace("/([^\\\])D/", "\${1}".backslashit($dateweekday_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])F/", "\${1}".backslashit($datemonth), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])l/", "\${1}".backslashit($dateweekday), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])M/", "\${1}".backslashit($datemonth_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])a/", "\${1}".backslashit($datemeridiem), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])A/", "\${1}".backslashit($datemeridiem_capital), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])D/", "\\1".backslashit($dateweekday_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])F/", "\\1".backslashit($datemonth), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])l/", "\\1".backslashit($dateweekday), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])M/", "\\1".backslashit($datemonth_abbrev), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])a/", "\\1".backslashit($datemeridiem), $dateformatstring);
|
||||
$dateformatstring = preg_replace("/([^\\\])A/", "\\1".backslashit($datemeridiem_capital), $dateformatstring);
|
||||
|
||||
$dateformatstring = substr($dateformatstring, 1, strlen($dateformatstring)-1);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue