Can';t在php简单dom解析器中克隆对象

Can';t在php简单dom解析器中克隆对象,php,parsing,clone,Php,Parsing,Clone,首先,我想确保下面是测试和克隆对象的正确方法。我正在使用PHP简单HTML DOM解析器 $page = 'www.google.ca'; $html = file_get_html($page); $test = clone $html; $test->find('title',0)->innertext = 'changed title'; echo $html->find('title',0)->innertext; echo $test->find('

首先,我想确保下面是测试和克隆对象的正确方法。我正在使用PHP简单HTML DOM解析器

$page = 'www.google.ca';
$html = file_get_html($page);

$test = clone $html;

$test->find('title',0)->innertext = 'changed title';

echo $html->find('title',0)->innertext;
echo $test->find('title',0)->innertext;
现在也许我做错了,但这似乎并没有将$html克隆到$test。两者都将输出“更改的标题”

所以我的问题是

  • 我的克隆正确吗
  • 在PHP中有没有其他克隆对象的方法

  • 谢谢大家

    文件上说:

    克隆对象时,PHP5将对对象的所有属性执行浅拷贝。任何引用其他变量的属性都将保留为引用

    所以可能。innertext引用了另一个对象,它是一个引用


    您是否尝试过
    $test=$html

    克隆
    仅执行浅拷贝。可能实际的DOM只是
    $html
    的一个属性(另一个对象)。我确实想出了(我想)如何修复它,我将对象解析为字符串,并使用类自己的函数将其转换回对象…………$test=str_get_html($html->outertext);