• 締切済み

検索結果の出力方法について

"001","Aさん","ぶどう", "001","Aさん","みかん", "001","Bさん","バナナ", "001","Bさん","イチゴ", "001","Cさん","スイカ", "001","Cさん","メロン", "002",・・・ "003",・・・ 例えば上記の様な検索用のログファイルがあり、”001”で検索した場合、今のところ極々単純に ━━━━━━━ │Aさん|ぶどう| ━━━━━━━ |Aさん|みかん| ━━━━━━━ |Bさん|バナナ| ━━━━━━━ |Bさん|イチゴ| ━━━━━━━ |Cさん|スイカ| ━━━━━━━ |Cさん|メロン| ━━━━━━━ ↑という感じで結果を出力させているのですが、 これを ━━━━━━━ |Aさん|ぶどう| |    |みかん| ━━━━━━━ |Bさん|バナナ| |    |イチゴ| ━━━━━━━ |Cさん|スイカ| |    |メロン| ━━━━━━━ 上記のように、同じ名前の結果が複数ある場合、それを統一して結果を表示させたいと考え、いろいろと悪戦苦闘してみましたが、どうしてもうまくいきません。 ログファイルには手を加えないという事を前提に、下のテーブルのような出力に なるような、構文の書き方がありましたら、是非教えてください。

  • tk-l
  • お礼率50% (2/4)
  • PHP
  • 回答数1
  • ありがとう数1

みんなの回答

  • kirin_f
  • ベストアンサー率51% (44/85)
回答No.1

ログファイルを開いて、検索条件と一致した場合は 一旦Aさん、BさんなどをKeyにした連想配列に 格納させます。 $result[$name][] = $fruit; という風に。 それでログファイルを閉じたあとに echo "<table>"; foreach($result as $name => $val){ echo "<tr><td>" . $name . "</td>"; echo "<td>"; foreach($val as $fruit){ echo $fruit . "<br>"; } echo "</td></tr>"; } echo "</table>"; と出力してあげるようにすればいいと思います。

関連するQ&A

  • Excelで複数条件で抽出した複数データを出力

    Excelで複数条件で抽出した複数データを出力したい Shett1のセルAとセルBの複数条件で、Sheet2を検索し一致したSheet2のセルCを Sheet1の該当するセルCに入れたいのです。 それを関数でするのはどうしたらいいのでしょうか? Sheet1 A B NAME ID(タイトル) いちご A01 いちじく A02 かき B01 すいか C01 なし D01 ぱいなっぷる E01 ばなな E02 ぶどう F01 みかん G01 めろん H01 もも I01 りんご J01 Sheet2 A B C 名前 ID 漢字(タイトル) みかん G01 蜜柑 いちご A01 苺 ぶどう F01 葡萄 りんご J01 林檎 もも I01 桃 かき B01 柿 なし D01 梨 すいか C01 西瓜 いちじく A02 無花果

  • Excel 関数 照合した結果がどこにあるのか表示したいのですが

    照合したいデータがあります。 A列とB列のセルを照合の結果、B列のセルがA列のどこにあるか、C列に行番号を表示したいのですが。 どのような関数がいいのか教えてください。よろしくお願いします。   A列   B列   C列 1 リンゴ みかん  2 2 みかん いちご  4 3 バナナ レモン  6 4 いちご メロン  5 5 メロン ぶどう  × 6 レモン

  • エクセル出の並び替えについて質問

    エクセルの並び替えにおいて質問させていただきます。  A列  B列  C列   D列 りんご  1  バナナ  4 バナナ  2  みかん  6 すいか  3  いちご  8 みかん  4  もも   3 いちご  5  すいか  2 ドリア  6  ぶどう  1 というものを  A列  B列  C列   D列 りんご  1   バナナ  2  バナナ  4 すいか  3  すいか  2 みかん  4  みかん  6 いちご  5  いちご  8 ドリア  6           もも   3         ぶどう  1 というようにA列にならってC,D列の項目を並び替えて、並び替えられないものは下に列挙させるようなやり方がありましたら教えてください。 どうぞ宜しくお願いします。

  • Excel2003 並び替えに関する質問 VBA初心者

    エクセルの並び替えにおいて質問させていただきます。  A列  B列  C列   D列 りんご  1  バナナ  4 バナナ  2  みかん  6 すいか  3  いちご  8 みかん  4  もも   3 いちご  5  すいか  2 ドリア  6  ぶどう  1 というものを  A列  B列  C列   D列 りんご  1   バナナ  2  バナナ  4 すいか  3  すいか  2 みかん  4  みかん  6 いちご  5  いちご  8 ドリア  6           もも   3         ぶどう  1 というようにA列にならってC,D列の項目を並び替えて、並び替えられないものは下に列挙させるようなやり方をVBAで組みたいのですが、まずはどうすればよいのかわかりません。 もし、これを見て答えられるようであれば、どなたか教えていただければ幸いです。 どうか宜しくお願いします。

  • 【EXCEL2000】2つのリストの合計を出すには?

    リストA リンゴ 3 みかん 5 バナナ 2 スイカ 3 リストB りんご 2 メロン 4 バナナ 3 いちご 2 ↑のような2つのリストがあるとして、 リストC りんご 5 みかん 5 バナナ 5 スイカ 3 メロン 4 いちご 2 リストA・Bの合計がリストCのようにするにはどのような関数を使えばいいかお解りになる方教えてください。 判りづらい質問で申し訳ありません。m(_ _)m ※品名と数量は別セルです。

  • 【PHP】 重複した値を取り除く処理

    【log.txt の中身】 1,スイカ 2,メロン 3,メロン 4,ミカン 5,スイカ 6,ミカン 次の【file01.php のソース】まではやってみましたが… 【file01.php のソース】 $log = file("log.txt"); for($i=0;$i<sizeof($log);$i++){ list($log1,$log2) = explode( "," , $log[$i]); print "$log2<br>\n"; } …この様にすると次の【出力結果】の様にブラウザーに表示されてしまいます。 【出力結果】 スイカ メロン メロン ミカン スイカ ミカン 次の【出力結果】の様に、重複した値だけを取り除きブラウザーに表示させたいのですが、どうしたら良いのでしょうか?教えて下さい。 【出力結果】 スイカ メロン ミカン

    • ベストアンサー
    • PHP
  • PHPで2進数の結果出力

    お世話になります。 下記のように2進数を処理したいのです。 ご存じの方お手数ですが回答の方よろしくお願いします。 $a=0011001(2進) a(1桁目) $b1="りんご" a(2桁目) $b2="みかん" a(3桁目) $b3="メロン" a(4桁目) $b4="パイナップル a(5桁目) $b5="いちご" a(6桁目) $b6="すいか" a(7桁目) $b7="レモン" echo $b1."と".$b2."と".$b3."と".$b4."と".$b5."と".$b6."と".$b7; 出力結果:メロンとパイナップルとレモン

    • ベストアンサー
    • PHP
  • Accessレポートの表示方法

    過去に同様の質問があれば、すみません。探してみたのですが見つけれませんでしたので、質問します。 テーブルに以下のデータが入っているとします。 A店 メロン 5個 B店 バナナ 2個 C店 メロン 1個 A店 いちご 3個 B店 メロン 2個 C店 バナナ 6個 A店 メロン 3個 B店 いちご 2個 C店 バナナ 1個 これをレポートで以下のように出力するにはどうしたらよいのでしょうか? メロン A店 8個     B店 2個     C店 1個 バナナ A店 0個     B店 2個     C店 7個 いちご A店 3個     B店 2個     C店 0個 各個数の計算はクエリ等を利用するのはわかっているのですが、 メロン A店 8個 メロン B店 2個 メロン C店 1個 と、メロンを何回も表示させるのではなく、1回にしたいのです。

  • 配列の中身を入れ替える方法

    非常に初心者的な問題だとは思いますがよろしくお願いします Array ( [0] => みかん [1] => りんご [2] => バナナ [3] => キウイ [4] => メロン [5] => スイカ) 上記のような配列があったとしまして、 [2] => バナナ [3] => キウイ [4] => メロン を、 [2] => イチゴ [3] => もも [4] => さば に変更したいのですが、 どのようにすればよいでしょうか・・・ かれこれ2日ほどやっているのですがわかりません・・・ よろしくお願いします。

    • 締切済み
    • PHP
  • エクセル 同名の場合はB列にC列の数値を入れたい!

     A列  B列   C列     D列 りんご        50    みかん みかん        30    ぶどう いちご        20    ばなな ぶどう        40    りんご ばなな        60     いちご ↑上記のような表があります。 もしA列とD列が同名であればC列の金額をB列に表示したいのですがよい関数はありますでしょうか?? おわかりの方教えてくださーい!

専門家に質問してみよう