5

こんにちはすべて私はcodeigniterで開発されたサイトを持っています。サーバーから取得したxmlを解析していて、戻り値をセッション変数に入れたいと思っています。しかし、私にこのエラーを返します:

致命的なエラー:「SimpleXMLElement」のシリアル化が許可されていないというメッセージを含むキャッチされない例外「Exception」

私のvps上の私のPHPバージョンは次のとおりです:PHPバージョン5.3.10-1ubuntu3.4

これは私のコードです:

$xml = new SimpleXMLElement(curl_exec($ch2));
$error2=curl_getinfo( $ch2, CURLINFO_HTTP_CODE );
curl_close($ch2);
foreach ($xml->DATA as $entry){
    $code_travco = $entry->attributes()->COUNTRY_CODE;
    $name_en =  $entry->COUNTRY_NAME;
    $newdata = array(
        'code'  => $code_travco,
        'name_en'     =>  $name_en
    );
    $this->session->set_userdata($code_travco.'_nation_en', $newdata);      
 } 
4

1 に答える 1

14

次のように、追加する前に文字列に変更してみてください。

foreach ($xml->DATA as $entry){
    $code_travco = (string) $entry->attributes()->COUNTRY_CODE;
    $name_en =  (string) $entry->COUNTRY_NAME;
    $newdata = array(
        'code'  => $code_travco,
        'name_en'     =>  $name_en
    );
    $this->session->set_userdata($code_travco.'_nation_en', $newdata);      
 } 
于 2013-03-18T09:56:16.263 に答える