讓PHP數組我有一個PHP文件list.php的從另一臺服務器
<?php
$arr=array('444','555');
echo var_export($arr);
?>
現在我想從使用的file_get_contents另一個PHP腳本的陣列。 這怎麼能實現?我不想使用會話。 這兩個腳本位於不同的服務器上。
讓PHP數組我有一個PHP文件list.php的從另一臺服務器
<?php
$arr=array('444','555');
echo var_export($arr);
?>
現在我想從使用的file_get_contents另一個PHP腳本的陣列。 這怎麼能實現?我不想使用會話。 這兩個腳本位於不同的服務器上。
您可以使用serialize()
數組或使用json_encode()
以JSON編碼數組。然後,在另一個PHP腳本中,您將使用unserialize()
或json_decode()
將字符串重新獲取到數組中。
實施例,使用serialize()
:
在a.php只會(服務器A)
$array = array("foo" => 5, "bar" => "baz");
file_put_contents('array.txt', serialize($array));
在b.php(服務器B)
$string = file_get_contents('http://www.otherserver.com/array.txt');
$array = unserialize($string);
var_dump($array); // This will print the original array
你也可以輸出字符串從PHP腳本,而是將其保存到文件中,就像這樣:
在a.php只會(在服務器A)
$array = array("foo" => 5, "bar" => "baz");
echo serialize($array); exit;
在b.php(服務器B )
$string = file_get_contents('http://www.otherserver.com/a.php');
$array = unserialize($string);
var_dump($array); // This will print the original array
作爲一個小擴展nickb的回答是:
SCRIPT1
$arr=array('444','555');
file_put_contents("data.txt", serialize($arr));
腳本2
$arr = unserialize(file_get_contents("data.txt"));
應該努力!
編輯:哦,尼克尼自己添加了一個例子:)
請問您能解釋一下,使用代碼示例嗎?我實際上嘗試了你提到的兩種方式。我得到一個錯誤:php unserialize在偏移量爲0時出錯。對於json,我得到的結果是NULL。 – ASHUTOSH
@ASHUTOSH - 已經添加了一個簡單的例子。讓我知道如果這不適合你 – nickb
謝謝尼克。前面我用戶以下代碼:在a.php <?php $ arr = array('444','555'); echo serialize($ arr); ? >和在b.php我做錯了嗎? –
ASHUTOSH