私はphpファイルlist.phpを持っています
<?php
$arr=array('444','555');
echo var_export($arr);
?>
ここで、file_get_contents を使用して別の php スクリプトから配列を取得したいと考えています。これはどのように達成できますか?セッションを使用したくありません。2 つのスクリプトは、異なるサーバー上にあります。
私はphpファイルlist.phpを持っています
<?php
$arr=array('444','555');
echo var_export($arr);
?>
ここで、file_get_contents を使用して別の php スクリプトから配列を取得したいと考えています。これはどのように達成できますか?セッションを使用したくありません。2 つのスクリプトは、異なるサーバー上にあります。
serialize()
配列を使用するか、 json_encode()
JSON で配列をエンコードするために使用できます。次に、他の PHP スクリプトで、unserialize()
orjson_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"));
動作するはずです!
編集:まあ、ニックは自分で例を追加しました:)