0

私は SimpleXMLElement を使用して XML を生成し、子メモの 1 つに一重引用符を含むセンテンスがあり、受信者は失敗します...センテンスをエンコードして一重引用符を変更するにはどうすればよいですか。

コード:

$objLeadXML = new SimpleXMLElement ( '<CancelLead/>' );

    $cancelReason = $objLead->getReasonForCancelling ();
    $cancelReason = str_replace("\'", "&#39;", $cancelReason);

    $objLeadElement = $objLeadXML->addChild ( 'Lead', $cancelReason );
    $objLeadElement->addAttribute ( 'ELMSRef', $objLead->getID () );
    $objLeadElement->addAttribute ( 'CancelDate', $objLeadHistory->ActionDate );
    $objLeadElement->addAttribute ( 'IsCancelled', $objLead->getStatusID () == KStatus::CANCELLED ? 1 : 0 );
    $objLeadElement->addAttribute ( 'CancelledBy', $objLeadHistory->PerformedBy );

$cancelReason には、"No Driver's License" のようなキャンセル理由が含まれています。その文で一重引用符をエンコードする必要があります。

4

1 に答える 1

0

str_replace("\'", "&#39", $parentString);

または、鋭角記号の場合は \' の代わりに ' 。

于 2012-08-21T15:34:56.257 に答える