這是IF語句。我想稍後訪問timeStampCleaned變量。爲什麼我不能訪問If語句中的變量?
if ($xmlRatesTime = '') {
$timeStampCleaned = date('j F Y H:i', $ratesTimeStamp); // Convert unix timestamp into date format
} else {
// ...
}
像這樣:
if(empty($ratesTimeStamp)) {
$newXML = simplexml_load_file('cache/rates.xml');
$child = $newXML->addChild('currency');
$child->addAttribute('id', ''.$to.'');
$child->addChild('title', $toTitle);
$child->addChild('loc', $toLocation);
$child->addChild('rate', $finalRate);
$child->addChild('timestamp', $timeStamp);
$dom = new DOMDocument('1.0');
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
$dom->loadXML($newXML->asXML());
$newXMLdomCleaned = $dom->saveXML();
file_put_contents('cache/rates.xml', $newXMLdomCleaned);
}
但我得到的錯誤:
Notice: Undefined variable: timeStampCleaned in ...file... on line 208
從我的理解,如果報表是精細內訪問變量。所以我不知道爲什麼這不起作用!?
感謝
製作一個測試用例。 – 2012-01-08 19:50:13
你在哪裏試圖獲得'timeStampCleaned'變量?不在你粘貼的代碼中。 – 2012-01-08 19:52:46
IF語句是有條件的,所以如果你第一次使用這個變量在你的IF語句中(即在那裏定義),那麼你必須確保它被實際調用。如果你的IF語句跳過它,當你稍後使用它時,它將是未定義的。 – 2012-01-08 19:53:12