PHPの質問です


AA.phpとBB.phpの2つのphpファイルがあり、AA.phpからBB.phpへ配列を渡します。
配列を受け取ったBB.phpは配列の値を見て処理を実行し結果をAA.phpに返すということをやりたいのですがどのようにやればよいかアドバイスを頂ければと思います。
具体的にはBB.phpにどのような構文を書けばよいかわかりません。

■AA.php
以下のような配列を渡します。
test: [0,1,2,3];//←この配列は変動します。[0,3]の時もあれば[1,2,3]の時もあります。

■BB.php
//配列に0があるときの処理
$box[] = 'サッカー';
//配列に1があるときの処理
$box[] = '野球';
//配列に2があるときの処理
$box[] = 'テニス';
//配列に3があるときの処理
$box[] = 'ゴルフ';

echo $box[];
//AA.phpに「サッカー,野球,テニス,ゴルフ」を出力させる

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2014/06/20 21:20:04

ベストアンサー

id:watercooler No.1

回答回数289ベストアンサー獲得回数51

a.phpとb.phpは同じサイト内にあるのかしら?
同じサイトならセッションを使うのが楽よ。
PHP: 基本的な使用法 - Manual
セッション管理 - PHP入門

postやgetで送りたいならシリアライズしたものを送信すれば楽なんだけどセキュリティホールになってしまう可能性もあるからあまりおすすめはしないわ。
PHP: serialize - Manual

他1件のコメントを見る
id:watercooler

同じサイト内にあります。

getで送信


だったらシリアライズでいいわ。かんたんに書くわよ。
動作チェックはしてあるわ。ひみつの部分だけあなたの環境にあわせて。
a.php

<?php
$request = array(0,1,2,3);
$url = 'http://ひみつ/b.php?request=' . urlencode( serialize( $request ) );
$result = unserialize( file_get_contents( $url ) );
var_dump( $result );

b.php

<?php
$request = unserialize( $_GET['request'] );
if ( array_search( 0, $request ) ) $box[] = 'サッカー';
if ( array_search( 1, $request ) ) $box[] = '野球';
if ( array_search( 2, $request ) ) $box[] = 'テニス';
if ( array_search( 3, $request ) ) $box[] = 'ゴルフ';
echo serialize( $box );
2014/06/14 08:29:54
id:finnapple

返事が遅くなりました。
サンプルソースまでありがとうございます!

2014/07/01 21:09:29

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません