在PHP中使用JSONP傳輸大量數據可以通過以下步驟實現:
以下是一個示例代碼:
<?php
// 生成大量數據
$data = array();
for ($i = 0; $i < 1000; $i++) {
$data[] = array('id' => $i, 'name' => 'Item ' . $i);
}
// 轉換為JSON格式的字符串
$json_data = json_encode($data);
// 獲取回調函數名
$callback = isset($_GET['callback']) ? $_GET['callback'] : 'callback';
// 輸出JSONP格式的數據
header('Content-Type: application/javascript');
echo $callback . '(' . $json_data . ');';
?>
在客戶端代碼中,可以通過創建一個具有相同名稱的JavaScript函數來處理傳輸的數據,例如:
function callback(data) {
// 在這里處理接收到的JSON數據
console.log(data);
}
// 創建一個script標簽進行JSONP請求
var script = document.createElement('script');
script.src = 'http://example.com/data.php?callback=callback';
document.body.appendChild(script);
上述代碼示例中,通過PHP生成了一個包含大量數據的JSON字符串,并在輸出時使用了JSONP格式。在客戶端代碼中,通過創建一個具有相同名稱的JavaScript函數來處理從服務器端傳輸的數據。最后,通過創建一個script標簽并設置src屬性來觸發JSONP請求。