[ticket/514] Use preg_replace_callback in portal
B3P-514
This commit is contained in:
@@ -712,15 +712,17 @@ class calendar extends module_base
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Unserialize links array
|
* Unserialize links array
|
||||||
*
|
*
|
||||||
* @param string $serial_str Serialized string
|
* @param string $serial_str Serialized string
|
||||||
*
|
*
|
||||||
* @return array Unserialized array
|
* @return array Unserialized string
|
||||||
*/
|
*/
|
||||||
protected function utf_unserialize($serial_str)
|
private function utf_unserialize($serial_str)
|
||||||
{
|
{
|
||||||
$out = preg_replace('!s:(\d+):"(.*?)";!se', "'s:'.strlen('$2').':\"$2\";'", $serial_str );
|
$out = preg_replace_callback('!s:(\d+):"(.*?)";!s', function ($result) {
|
||||||
|
return 's:' . strlen($result[2]) . ":\"{$result[2]}\";";
|
||||||
|
}, $serial_str);
|
||||||
return unserialize($out);
|
return unserialize($out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -462,15 +462,17 @@ class links extends module_base
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Unserialize links array
|
* Unserialize links array
|
||||||
*
|
*
|
||||||
* @param string $serial_str Serialized string
|
* @param string $serial_str Serialized string
|
||||||
*
|
*
|
||||||
* @return array Unserialized string
|
* @return array Unserialized string
|
||||||
*/
|
*/
|
||||||
private function utf_unserialize($serial_str)
|
private function utf_unserialize($serial_str)
|
||||||
{
|
{
|
||||||
$out = preg_replace('!s:(\d+):"(.*?)";!se', "'s:'.strlen('$2').':\"$2\";'", $serial_str);
|
$out = preg_replace_callback('!s:(\d+):"(.*?)";!s', function ($result) {
|
||||||
|
return 's:' . strlen($result[2]) . ":\"{$result[2]}\";";
|
||||||
|
}, $serial_str);
|
||||||
return unserialize($out);
|
return unserialize($out);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -526,12 +526,12 @@ class main_menu extends module_base
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Unserialize links array
|
* Unserialize links array
|
||||||
*
|
*
|
||||||
* @param string $serial_str Serialized string
|
* @param string $serial_str Serialized string
|
||||||
*
|
*
|
||||||
* @return array Unserialized string
|
* @return array Unserialized string
|
||||||
*/
|
*/
|
||||||
private function utf_unserialize($serial_str)
|
private function utf_unserialize($serial_str)
|
||||||
{
|
{
|
||||||
$out = preg_replace_callback('!s:(\d+):"(.*?)";!s', function ($result) {
|
$out = preg_replace_callback('!s:(\d+):"(.*?)";!s', function ($result) {
|
||||||
|
|||||||
Reference in New Issue
Block a user