別のファイルにリダイレクトする必要があるphpファイルがありますが、2番目のファイルに配列を渡す必要があります。これどうやってするの。
私はこれが間違っていることを知っていますが、論理的にこれに似たものが必要です。
<?php
$arr = array('this'=>'is', 'some'=>'stuff');
header("someurl.php", vals=>$arr);
?>
header("Location: someurl.php?" . http_build_query($arr));
それはあなたがヘッダーをする方法ではありません。それはする必要があります
header("Location: someurl.php?vals=$arr");
ただし、これはURLを生成するだけです
someurl.php?vals=Array
リダイレクトはその性質上、POSTを実行できないことに注意してください。その結果、新しいGETリクエストが発生します。つまり、URLでデータを渡す必要があります。URLには長さの制限があるため、非常に大きなURLを使用している場合は、ほとんどのURLが失われることがほぼ確実です。
ただし、短い場合は、次のように試すことができます。
$url = 'someurl.php?vals=' . url_encode(serialize($arr));
header("Location: $url");
そしてそれがうまくいくことを願っています。
$ arrayを公開したくない場合は、PHPインビルドセッションサポートを使用する必要があります。
session_start(); // DO CALL ON TOP OF BOTH PAGES
$_SESSION['array'] = $array;
echo $_SESSION['array']; // GIVES SAME $array FOR BOTH PAGES
配列をセッションまたはリクエストに保存してから取得できます。
別のリクエストの場合は、セッションで行う必要があります。
$_SESSION['myarray'] = $array_you_want_to_store;
その後。
$array_you_want_to_retrieve = $_SESSION['myaarray'];