![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
とても説明しずらいのですが、
例えば、ある処理によって連想配列データを受け取るという
プログラムがあります。
$hoge = Array
(
[deta1] => 大阪市
[deta2] => カツ丼
[deta3] => 男
)
このデータを利用して
出身:<?= $hoge[deta1] ?>
好物:<?= $hoge[deta2] ?>
性別:<?= $hoge[deta3] ?>
のようなことを施すわけですが、ここで問題なのは[deta1]という連想配列名が
絶対的な名前ではなく、出力結果によって相対的に変わってしまうという点なんです。
つまり、ある日処理項目を足して
$hoge = Array
(
[deta1] => 大阪市
[deta2] => 釣り
[deta3] => カツ丼
[deta4] => 男
)
のようになった場合
出身:<?= $hoge[deta1] ?>
好物:<?= $hoge[deta2] ?>
性別:<?= $hoge[deta3] ?>
では、おかしくなってしまい、
ズレてきてしまうのです。
もちろん本来なかったデータを追加するわけですから
最終的に、表示部分も取得した出力結果に応じて
いじらないといけないわけですが、
何十、何百という配列数、しかも多次元配列とかになってきたら
ひとつ追加しただけで、表示部分への影響が
大規模になってきますし、管理もしづらくなってきます。
そこで、このような相対的な連想配列名を扱う場合の
表示処理部分が管理しやすく、影響を受けにくい設計があれば、
アドバイスをお願い致します。
No.3ベストアンサー
- 回答日時:
これはデータベースで例えると、フィールドだけが増えていくという事ですか?それともレコードも増えていくのですか?
フィールドだけなら、ANo.1さんのように
$hoge["出身"]
$hoge["趣味"]
$hoge["好物"]
$hoge["性別"]
が一番管理しやすいのでは。
もし、レコードも増やすなら
$hoge[deta1]["出身"]
$hoge[deta1]["趣味"]
$hoge[deta1]["好物"]
$hoge[deta1]["性別"]
$hoge[deta2]["出身"]
$hoge[deta2]["趣味"]
$hoge[deta2]["好物"]
$hoge[deta2]["性別"]
でしょう。
No.2
- 回答日時:
追加するなら
$hoge = Array
(
[deta1] => 大阪市
[deta2] => カツ丼
[deta3] => 男
[deta4] => 釣り
)
にします
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- フランス語 フランス語文章の構造について質問 1 2022/08/24 18:02
- フランス語 フランス語の意味と構文について 1 2023/03/07 15:28
- フランス語 フランス語 de, desの使い方について 5 2022/12/11 15:10
- フランス語 フランス語熟語の意味 2 2023/05/26 18:48
- JavaScript javascriptで文字分割は、 split() などメソッド不要??? 4 2023/02/06 22:50
- フランス語 下記の3つ目の文について、あなただったらどう表現し直しますか? 「La population mon 1 2023/07/06 22:02
- フランス語 フランス語のフレーズについて質問 2 2022/04/08 17:52
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- フランス語 フランス語文法 2 2023/05/24 18:10
- フランス語 フランス語 1 2023/03/22 19:59
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA コレクションに2次元配列...
-
classの再定義エラーについて
-
PHPの変数値をリンクさせたい
-
PHP Catchable fatal error の...
-
fwriteで改行出来ない
-
既存関数の上書き
-
PHPコードの中から、SQL文を外...
-
PHPで、相対的な変数名の場合の...
-
サブネットマスクを用いたIP制...
-
Fatal error: Cannot use []
-
VB.NETからVBAマクロ(引数)を呼...
-
関数から関数を呼び出したとき...
-
エラーの理由が分りません。Pri...
-
powershellに詳しいかた教えて...
-
配列の操作時にLNK2001外部シン...
-
関数の動きと記述方法の意味を...
-
正規表現 ファイル名の取得
-
共用体のサイズをsizeofで
-
PHP、ヒアドキュメント内でのIF...
-
PHPプログラム上で「URLを直接...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA コレクションに2次元配列...
-
エラーの理由が分りません。Pri...
-
可変変数にアロー演算子を使いたい
-
VB.NETからVBAマクロ(引数)を呼...
-
PHP、ヒアドキュメント内でのIF...
-
VB.NETSystem.Xml 要素数を得る...
-
どういうプログラムを関数化を...
-
vb作成したらでbeep音が鳴りま...
-
次のhtml・cssでspan内の文字を...
-
classの再定義エラーについて
-
既存関数の上書き
-
protectedなのにアクセスできな...
-
配列の操作時にLNK2001外部シン...
-
UNIX CP "で上書きしません"
-
PHPでの画像の形式の変換
-
PHPプログラム上で「URLを直接...
-
Let's Encryptで自動更新がされ...
-
ExcelVBAで部分一致(*)をしたい
-
VB6のコンボボックスのテキスト...
-
ASPのResponse.WriteをPHPでは...
おすすめ情報