2012-03-14 101 views
1

我怎样才能停止我的XML加载每次我的index.php(模板页面)加载除第一次?加载页面后删除变量页面

我使用我的index.php页面作为模板,根据$_GET[''];值和一些xml数据刷新和显示不同的数据。我想在第一次加载页面时将xml加载到可变内容中,但不是每次都加载。以下是我的代码。

session_start(); 
$load_xml = true; 

    if($load_xml){ 
     $xml = simplexml_load_file('PosterData.xml'); 
     $load_xml = false; 
      $_SESSION['xmlData'] = $xml; 
    } 

可能与上面的代码是$ load_xml永远不会是假的。任何想法我可以做到这一点?

回答

1
session_start(); 

if(empty($_SESSION['xmlData'])){ 
    $xml = simplexml_load_file('PosterData.xml'); 
    $_SESSION['xmlData'] = $xml; 
} 
+0

感谢。这是正确的在我面前。不知道我错过了这个。 +1,我会检查这个答案。 – Denoteone 2012-03-14 03:47:53

1

你可以设置一个$_SESSION变量 - 您已经有 - not_first_load,会做什么它看起来像它会做。

然后:

session_start(); 

if(!isset($_SESSION['not_first_load']) 
    $xml = simplexml_load_file('PosterData.xml'); 
    $_SESSION['xmlData'] = $xml; 
    $_SESSION['not_first_load'] = 1; 
} 
+0

这是不必要的,设置一个变量只是为了跟踪是否设置了另一个变量。有'empty()'和'isset()'旨在完成这项任务。 – Amber 2012-03-14 03:47:25

+0

感谢+1帮助。 – Denoteone 2012-03-14 03:48:35