2016-11-11 10 views
0

に私はxmlファイルから変数を取得し、それを保存しようとしているPHPファイルとしてSimpleXMLをエクスポート「にSimpleXMLElement :: __ SET_STATE(配列(」変数

 $xmlresponse = simplexml_load_string($dom->saveXML()); 
    $shipmentid = $xmlresponse->ListInboundShipmentsResult->ShipmentData->member->ShipmentId; 
echo '<br />' . $shipmentid . '<br />'; 


$todaydt = new DateTime('today'); 
$today3 = $todaydt->format('m-d-Y') . PHP_EOL; 
$today = rtrim($today3); 
$var_str = var_export($shipmentid, true); 
$var = "<?php\n\n\$shipmentid = $var_str;\n\n?>"; 
file_put_contents('shipmentid_' . $today . '.php', $var); 

} 

しかし、私のshipmentid_11-11-2016.phpファイルにそれが与えています私

$ shipmentid =にSimpleXMLElement :: __ SET_STATE(配列( 0 => 'shipmentid'、 ));

変数を単に保存するにはどうすればいいですか?

$ shipmentid = 'shipmentid';

?あなたは

echo '<br />' . $shipmentid . '<br />'; 

PHPは暗黙的に文字列に$shipmentid値を変換します

+0

'$ var_str = strval($のshipmentid);' –

+0

ありがとうございます!それは整数に変換しているように見えますが、 '$ shipmentid = FBA000AAA;'は '$ shipmentid = 'FBA000AAA'になります。 hmm .. – bbruman

+0

'$ var =" <?php \ n \ n \ $ shipmentid = '$ var_str'; \ n \ n?> ";"この行に引用符が追加され、動作します。再度、感謝します!私は決着をつけることができるので、答えとして投稿してください。 – bbruman

答えて

1

var_exportはそれをしないので、あなたは自分でそれを変換する必要があります。

$var_str = strval($shipmentid); 

次の事は$var_strが文字列であると周りの任意の引用符が含まれていないということです。だから、もう一度自分で引用符を記述する必要があります。

// with double quotes 
$var = "<?php\n\n\$shipmentid = \"$var_str\";\n\n?>"; 
// with single quotes 
$var = "<?php\n\n\$shipmentid = '$var_str';\n\n?>"; 
関連する問題