Discuz! X3.0 移植 PHP7.0 脑洞测试

【更新:好吧……大神总是比我快23333
http://loger.me/tech/discuz-x32-php7.html
选择狗带,选择新生】

没错我的脑洞就是这样的大~
之所以用X3.0而不用X3.2是因为X3.2太“腾讯”了233333

数据库引擎

PHP7.0开始正式弃用mysql(其实5.4开始已经标记Deprecated了),所以需要mysqli代替。
Action: 从X3.2复制过来。(才不是偷懒呢~)

XML相关函数

PHP7.0已经用不了xml_parse系列函数了(php manual上是这么写的quq)
Action: /source/class/class_xml.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
/*来自dz的版权233*/
 
function xml2array(&$xml, $isnormal = FALSE) {
	$doc = simplexml_load_string($xml);
	$sa = _int_xml2array($doc);
	return $sa;
}
 
function _int_xml2array(&$xml) {
	if (!$xml->children()) return (string) $xml;
	$array = array();
	foreach ($xml->children() as $element => $node) {
		foreach($node->attributes() as $name)
		{
			$array[(string)$name] = (count($node) > 0) ? _int_xml2array($node) : (string)$node;
		}
	}
	return $array;
}

$_G[setting]内容集体失踪

目前插入print_r显示的setting都为空,而初始化函数都还在。
等待排查。

…… Coming soon~~~

选择狗带,选择新生。

“Discuz! X3.0 移植 PHP7.0 脑洞测试”的2个回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注