New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PHP 7 호환성 개선 (진행중) #1814

Merged
merged 12 commits into from Feb 18, 2016
@@ -200,9 +200,16 @@ function Context()
*/
function init()
{
if(!isset($GLOBALS['HTTP_RAW_POST_DATA']) && version_compare(PHP_VERSION, '5.6.0', '>=') === true) {
if(simplexml_load_string(file_get_contents("php://input")) !== false) $GLOBALS['HTTP_RAW_POST_DATA'] = file_get_contents("php://input");
if(strpos($_SERVER['CONTENT_TYPE'], 'json') || strpos($_SERVER['HTTP_CONTENT_TYPE'], 'json')) $GLOBALS['HTTP_RAW_POST_DATA'] = file_get_contents("php://input");
// fix missing HTTP_RAW_POST_DATA in PHP 5.6 and above
if(!isset($GLOBALS['HTTP_RAW_POST_DATA']) && version_compare(PHP_VERSION, '5.6.0', '>=') === TRUE)
{
$GLOBALS['HTTP_RAW_POST_DATA'] = file_get_contents("php://input");
// If content is not XML JSON, unset
if(!preg_match('/^[\<\{\[]/', $GLOBALS['HTTP_RAW_POST_DATA']) && strpos($_SERVER['CONTENT_TYPE'], 'json') === FALSE && strpos($_SERVER['HTTP_CONTENT_TYPE'], 'json') === FALSE)
{
unset($GLOBALS['HTTP_RAW_POST_DATA']);
}
}
// set context variables in $GLOBALS (to use in display handler)
View
@@ -1089,7 +1089,7 @@ function close($type = 'master', $indx = 0)
* this method is protected
* @return boolean
*/
function _begin()
function _begin($transactionLevel = 0)
{
return TRUE;
}
@@ -1117,7 +1117,7 @@ function begin()
* this method is protected
* @return boolean
*/
function _rollback()
function _rollback($transactionLevel = 0)
{
return TRUE;
}
@@ -144,7 +144,7 @@ function addQuotes($string)
* this method is private
* @return boolean
*/
function _begin($transactionLevel)
function _begin($transactionLevel = 0)
{
if(__CUBRID_VERSION__ >= '8.4.0')
{
@@ -167,7 +167,7 @@ function _begin($transactionLevel)
* this method is private
* @return boolean
*/
function _rollback($transactionLevel)
function _rollback($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -113,7 +113,7 @@ function addQuotes($string)
* this method is private
* @return boolean
*/
function _begin($transactionLevel)
function _begin($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -136,7 +136,7 @@ function _begin($transactionLevel)
* this method is private
* @return boolean
*/
function _rollback($transactionLevel)
function _rollback($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -147,7 +147,7 @@ function addQuotes($string)
* this method is private
* @return boolean
*/
function _begin()
function _begin($transactionLevel = 0)
{
return true;
}
@@ -157,7 +157,7 @@ function _begin()
* this method is private
* @return boolean
*/
function _rollback()
function _rollback($transactionLevel = 0)
{
return true;
}
@@ -51,7 +51,7 @@ function _close($connection)
* this method is private
* @return boolean
*/
function _begin($transactionLevel)
function _begin($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -71,7 +71,7 @@ function _begin($transactionLevel)
* this method is private
* @return boolean
*/
function _rollback($transactionLevel)
function _rollback($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -85,7 +85,7 @@ function _close($connection)
* this method is private
* @return boolean
*/
function _begin($transactionLevel)
function _begin($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -105,7 +105,7 @@ function _begin($transactionLevel)
* this method is private
* @return boolean
*/
function _rollback($transactionLevel)
function _rollback($transactionLevel = 0)
{
$connection = $this->_getConnection('master');
@@ -86,7 +86,7 @@ function getRedirectUrl()
* @param string $type type of message (error, info, update)
* @return void
* */
function setMessage($message, $type = NULL)
function setMessage($message = 'success', $type = NULL)
{
parent::setMessage($message);
$this->setMessageType($type);
@@ -370,7 +370,7 @@ function setLayoutPath($path)
* set the directory path of the layout directory
* @return string
* */
function getLayoutPath()
function getLayoutPath($layout_name = "", $layout_type = "P")
{
return $this->layout_path;
}
@@ -94,7 +94,7 @@ function getHttpStatusCode()
* @param string $message Error message
* @return bool Alaways returns true.
*/
function setMessage($message = 'success')
function setMessage($message = 'success', $type = NULL)
{
if($str = Context::getLang($message))
{
View
@@ -1200,7 +1200,7 @@ function removeSrcHack($match)
continue;
}
$val = preg_replace('/&#(?:x([a-fA-F0-9]+)|0*(\d+));/e', 'chr("\\1"?0x00\\1:\\2+0)', $m[3][$idx] . $m[4][$idx]);
$val = preg_replace_callback('/&#(?:x([a-fA-F0-9]+)|0*(\d+));/', function($n) {return chr($n[1] ? ('0x00' . $n[1]) : ($n[2] + 0)); }, $m[3][$idx] . $m[4][$idx]);
$val = preg_replace('/^\s+|[\t\n\r]+/', '', $val);
if(preg_match('/^[a-z]+script:/i', $val))
@@ -1724,10 +1724,10 @@ public function EncodeQ ($str, $position = 'text') {
switch (strtolower($position)) {
case 'phrase':
$encoded = preg_replace("/([^A-Za-z0-9!*+\/ -])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded);
$encoded = preg_replace_callback('/([^A-Za-z0-9!*+\/ -])/', function($n) { return '='.sprintf('%02X', ord('\\1')); }, $encoded);
break;
case 'comment':
$encoded = preg_replace("/([\(\)\"])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded);
$encoded = preg_replace_callback('/([\(\)\"])/', function($n) { return '='.sprintf('%02X', ord('\\1')); }, $encoded);
case 'text':
default:
// Replace every high ascii, control =, ? and _ characters
@@ -144,7 +144,8 @@ function procEditorAdminGeneralConfig()
{
$oModuleController = getController('module');
$configVars = Context::getRequestVars();
$config = new stdClass;
if($configVars->font_defined != 'Y') $config->font_defined = $configVars->font_defined = 'N';
else $config->font_defined = 'Y';
@@ -289,7 +289,7 @@ function getLayoutRawData($layout_srl, $columnList = array())
* @param string $layout_type (P : PC, M : Mobile)
* @return string path of layout
*/
function getLayoutPath($layout_name, $layout_type = "P")
function getLayoutPath($layout_name = "", $layout_type = "P")
{
$layout_parse = explode('|@|', $layout_name);
if(count($layout_parse) > 1)
@@ -615,7 +615,7 @@ function _getMemberInputTag($memberInfo, $isAdmin = false)
}
$replace = array_merge($extentionReplace, $replace);
$inputTag = preg_replace('@%(\w+)%@e', '$replace[$1]', $template);
$inputTag = preg_replace_callback('@%(\w+)%@', function($n) { return $replace[$n[1]]; }, $template);
if($extendForm->description)
$inputTag .= '<p class="help-block">'.$extendForm->description.'</p>';
@@ -1381,7 +1381,7 @@ function getModuleConfig($module, $site_srl = 0)
$args->site_srl = $site_srl;
$output = executeQuery('module.getModuleConfig', $args);
if($output->data->config) $config = unserialize($output->data->config);
else $config = null;
else $config = new stdClass();
//insert in cache
if($oCacheHandler->isSupport())
ProTip! Use n and p to navigate between commits in a pull request.