Heim >Backend-Entwicklung >PHP-Problem >So ersetzen Sie Wortinhalte in PHP
So ersetzen Sie Word-Inhalte durch PHP: Laden Sie zuerst PHPWORD herunter, dekomprimieren Sie es und fügen Sie es in „extend“ unter dem Projekt ein. , ' ');"-Methode kann den Kontoinhalt ersetzen.
PHP verwendet PHPWORD, um den Inhalt des WORD-Dokuments zu ersetzen
Verwenden Sie PHP, um den Inhalt in Word zu ersetzen. Wenn die Umgebung TP5 ist
Laden Sie die PHPWORD-Klasse herunter, entpacken Sie sie und legen Sie sie unter dem Projekt „extend/“ ab, also: project/extend/PHPWord
Empfohlen: „PHP-Tutorial 》
Verwendung:
require_once './extend/PHPWord/PHPWord.php'; require_once './extend/PHPWord/PHPWord/IOFactory.php'; $PHPWord = new PHPWord(); $loadtemplate = $PHPWord->loadTemplate('/'.$template.'.docx';);//加载word文件 $loadtemplate->setValue('account', '123');//替换account内容为123 $loadtemplate->setValue('password', '456');//替换password内容为456 $loadtemplate->save('/yourpath/'.md5(time()) .'.docx');//存储位置
Wenn Sie den Inhalt unterwegs ersetzen, finden Sie verstümmelte Zeichen oder der Ersatz ist nicht erfolgreich!
Hauptsächlich wurde die Ersetzungsmethode von setValue geändert: extension/PHPWord/PHPWord/template.php
wurde ersetzt durch:
public function setValue($search, $replace, $limit=-1) { if(substr($search, 0, 1) !== '{' && substr($search, -1) !== '}') { $search = '{'.$search.'}'; } if(!is_array($replace)) { // $replace = utf8_encode($replace); //$replace = iconv( 'gbk','utf-8', $replace); $replace = str_replace("\n","<w:br />",$replace); } preg_match_all('/\{[^}]+\}/', $this->_documentXML, $matches); foreach ($matches[0] as $k => $match) { $no_tag = strip_tags($match); if ($no_tag == $search) { $match = '{'.$match.'}'; $this->_documentXML = preg_replace($match, $replace, $this->_documentXML, $limit); if ($limit == 1) { break; } } } }
Das obige ist der detaillierte Inhalt vonSo ersetzen Sie Wortinhalte in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!