1

文字列が値に対応するリストがあります。たとえば、会社のリストで、MicrosoftにMSという文字を対応させることができます。

明らかに、これをMySQLのテーブルとして置き換えてリストを拡張可能にすることもできますが、好奇心から、これをPHPで一定の形式でどのように表現しますか?

PS:列挙型として機能する定数付きクラスアプローチ(ここで受け入れられた回答:PHPと列挙型を参照)がありますが、列挙型が整数値にマップされるのを見ると、それは本当に役に立ちますか?

4

3 に答える 3

4

defineを使用するのはどうですか

define("MS","Microsoft");
echo MS;

これはMicrosoftに反響するでしょう。

http://php.net/manual/en/function.define.php

また、考えられる解決策へのリンクは、代わりに文字列で同じように簡単に使用できます。他の言語の列挙型として機能する唯一の理由は、代わりに文字列を使用するのではなく、0からnまでの値を定義するためです。

class Companies {
    const MS  = 'Microsoft';
    const IBM = 'International Business Machines';
}

echo Companies::MS;

これでうまくいくと思います。

于 2012-06-27T09:00:35.007 に答える
1

単一の会社が多くの対応する文字を持つことができる場合、私はおそらく多次元配列を調べることから始めますが、それらが管理するのが難しくなる可能性があるという欠点は、定数を定義することです。

于 2012-06-27T09:04:06.057 に答える
1

キーと値のペアがある場合は、それらをオブジェクトに入れることができるため、より実用的です。

このリンクを確認してください:arrayToObject()関数

于 2012-06-27T09:07:14.890 に答える