php怎麼每頁讀取三條xml資料

來源:互聯網
上載者:User
php如何每頁讀取三條xml資料?
以下代碼可以將“9.xml”的shortdesc欄位全部讀出:
-------------------------------------------
$xml_array=simplexml_load_file('9.xml'); //將XML中的資料,讀取到數組對象中

foreach($xml_array as $tmp){
echo $tmp->shortdesc."
";
}

?>
---------------------------------------------
由於資料量非常大,我想實現的是每頁只顯示三條資料,當點擊“下一步”按鈕時,就接著顯示下三條資料,直到資料全部顯示完成,再點“下一步”按鈕時,頁面沒有變化。請教如何??最好有代碼,謝謝了。

------解決方案--------------------
你原來是這樣輸出的
foreach($xml_array as $tmp){
echo $tmp->shortdesc."
";
}

要這樣輸出才行
$page = ($_GET['page'] - 1) * 3;
for($i=$page; $i<$page+3; $i++) {
echo $xml[$i]->shortdesc."
";
}

------解決方案--------------------
老大的代碼夠明了的了
// 擷取數組
$xml_array=simplexml_load_file('9.xml');
// 從第幾條開始。你不是要求分頁嘛,分頁的話總得有個資料起始位置和位移量。

// 那麼這個資料起始位置就是 $page。 假設你要第2頁,那麼傳入參數$_GET['page'] === 2
// (2-1)*3 即是 3 。這是按數組索引值取得資料的,數組的索引值從0開始。那麼 0,1,2就是第一頁,3,4,5就是第二頁
$page = ($_GET['page'] - 1) * 3;
// 迴圈3次,計算看看$i每次的值,分別是 3, 4, 5 。那麼就是上面說的取索引值為3,4,5的資料
for($i=$page; $i<$page+3; $i++) {
echo $xml[$i]->shortdesc."
";
}
// 下一頁的連結傳入的參數就是 $_GET['page'] + 1 嘍
------解決方案--------------------
那就是你的不對了,你從一開始就沒有提供正確的資訊
你的
foreach($xml_array as $tmp){
echo $tmp->shortdesc."
";
}
並不能輸出文檔內容
要這樣才可以
foreach($xml_array->news->new as $tmp){
echo $tmp->shortdesc."
";
}

而 $xml_array->news->new 是一個數組,於是
$xml = $xml_array->news->new;
$page = min(3, count($xml)-3);
for($i=$page; $i<$page+3; $i++) {
echo $xml[$i]->shortdesc."
";
}
就成立了
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.