because my file 's charset is utf-8,not iso-8859-1.
thus,i remove utf8_encode relative lines:
if(!is_array($replace)) {
$replace = utf8_encode($replace);
}
and it become a new function "setValueByDefaultCharset" ,the last code is :
public function setValueByDefaultCharset($search, $replace) {
if(substr($search, 0, 2) !== '${' && substr($search, -1) !== '}') {
$search = '${'.$search.'}';
}
$this->_documentXML = str_replace($search, $replace, $this->_documentXML);
}
thus,i remove utf8_encode relative lines:
if(!is_array($replace)) {
$replace = utf8_encode($replace);
}
and it become a new function "setValueByDefaultCharset" ,the last code is :
public function setValueByDefaultCharset($search, $replace) {
if(substr($search, 0, 2) !== '${' && substr($search, -1) !== '}') {
$search = '${'.$search.'}';
}
$this->_documentXML = str_replace($search, $replace, $this->_documentXML);
}