将PHP5移植到旧式PHP4,DOMDocument会有疑问

将PHP5移植到旧式PHP4,DOMDocument会有疑问,php,xml,legacy,php4,domdocument,Php,Xml,Legacy,Php4,Domdocument,我正试图使我的一些php5代码在遗留服务器上工作,不幸的是,该服务器无法升级(客户端机器) if(!isset($docRoot)){ $docRoot=$\u服务器['DOCUMENT\u ROOT']; } //单词/短语的通用存储类 $t=新的stdClass(); $t->lang=$curPage->lang; //加载xml翻译,可能会将其拆分为不同的文件。。 $translations=新的DOMDocument(); $translations->load($docRoot./x

我正试图使我的一些php5代码在遗留服务器上工作,不幸的是,该服务器无法升级(客户端机器)

if(!isset($docRoot)){
$docRoot=$\u服务器['DOCUMENT\u ROOT'];
}
//单词/短语的通用存储类
$t=新的stdClass();
$t->lang=$curPage->lang;
//加载xml翻译,可能会将其拆分为不同的文件。。
$translations=新的DOMDocument();
$translations->load($docRoot./xml/translations.xml”);
$words=$translations->getElementsByTagName(“word”);
$count=0;
foreach($words作为$word)
{
$name=$word->getAttribute('name');
$trans=$word->childNodes;
如果($trans->length>0){
对于($i=0;$i<$trans->length;$i++){
$child=$trans->item($i);
如果($child->nodeName==$curPage->lang){
$t->$name=$child->nodeValue;
}
}
}
}
我已经了解到domdocument在php4中缺少很多方法(它是php4.4.4,在centos机器上),其中一些似乎被全局静态函数所取代
domxml\u open\u file()
?XML还有一个UTF8编码,站点位于ISO-8859-1中

底线是,我迷路了!如何让这些东西在遗留php4上工作?在php4上使用unicode有什么问题吗


谢谢。

好吧,我成功地实现了这一点——幸运的是,我在php5的simpleXML函数的一个后端口上找到了它,它在php4.4上运行得很好。我已经重写了很多代码,这并不太棘手


希望这对以后的其他人有所帮助。

老实说,在FastCGI下并行安装PHP 5.3.3可能比将此代码移植到不受支持的4.x版本要好。Charles其实并不坏,只是需要找到一个在php4上受支持的像样的XML库。
if (!isset($docRoot)) {
    $docRoot = $_SERVER['DOCUMENT_ROOT'];
}

// generic storage class for the words/phrases
$t = new stdClass();
$t->lang = $curPage->lang;



// load xml translations, could split this into different files..
$translations = new DOMDocument();
$translations->load($docRoot."/xml/translations.xml");

$words = $translations->getElementsByTagName("word");
$count = 0;
foreach( $words as $word )
{

    $name = $word->getAttribute('name');
    $trans = $word->childNodes;

    if ($trans->length > 0) {
        for($i = 0; $i < $trans->length; $i++) {
            $child = $trans->item($i); 



            if ($child->nodeName == $curPage->lang) {
                $t->$name = $child->nodeValue;
            }


        }
    }

}