以下是TMX文件中的TU(翻译单位)示例:
<tu creationdate="20080812T111221Z" creationid="Cheeseus" changedate="20190825T065920Z" changeid="Cheeseus" usagecount="0" tuid="2">
<tuv xml:lang="BG">
<seg>ПАРТНЬОРИ</seg>
</tuv>
<tuv xml:lang="EN-GB">
<seg>PARTNERS</seg>
</tuv>
</tu>
我是这样读档案的:
$xmlStr = file_get_contents($uploadedFile);
$xmlObj = simplexml_load_string($xmlStr);
$TUs = $xmlObj->body->tu;
foreach($TUs as $TU) {
if(isset($TU->tuv[0]->seg)) {
$sourceText = $TU->tuv[0]->seg->asXML();
$targetText = $TU->tuv[1]->seg->asXML();
}
}
我现在也在试着读取每个tuv
的xml:lang
个属性.我认为我能够以访问父对象tu
的属性(例如$TU['creationdate']
)的相同方式来完成此操作.但同样的方法并不奏效.
我试过了:
var_dump($TU->tuv[0]['xml:lang']) /* result: null */
var_dump($TU->tuv['xml:lang']); /* result: null */
var_dump($TU->tuv[0]['attributes']['xml:lang']); /* result: Warning: Trying to access array offset on value of type null... */
var_dump($TU->tuv[0]['@attributes']['xml:lang']); /* result: Warning: Trying to access array offset on value of type null... */
以及其他几个完全 destruct 了 playbook 的人.我还try 在不使用"xml:"部分的情况下访问该属性--效果相同.
我希望你能为我指明正确的方向.