PHPで静的文字列の2ウェイマッピングクラスを実装する最良の方法は何ですか. 3つのキーと値のペアの双方向マッピングのために6つの定数を持つEnumクラスがあると思いました。より良い実装を提案してください。
例: 次のマッピングがある場合、M を参照する場合はマンガロールを取得する必要があり、マンガロールを参照する場合は M も取得する必要があります。
M=> マンガロール
D=> デリー
O=> ウーティ
ありがとう !!
PHPで静的文字列の2ウェイマッピングクラスを実装する最良の方法は何ですか. 3つのキーと値のペアの双方向マッピングのために6つの定数を持つEnumクラスがあると思いました。より良い実装を提案してください。
例: 次のマッピングがある場合、M を参照する場合はマンガロールを取得する必要があり、マンガロールを参照する場合は M も取得する必要があります。
M=> マンガロール
D=> デリー
O=> ウーティ
ありがとう !!
3つのキーと値のペアの双方向マッピングのために6つの定数を持つEnumクラスがあると思いました。より良い実装を提案してください。
絶対に必要でない限り、このための特別なクラスは必要ありません。単純な PHP 配列でこれを行うことができます
<?php
$names=array();
$names["M"]="Mangalore";
$names["D"]="Delhi";
$names["O"]="Ooty";
echo $names["M"]; // Mangalore
echo array_search("Mangalore", $names); //M
?>
編集
このための小さな関数を書くこともできます
<?php
$names=array();
$names["M"]="Mangalore";
$names["D"]="Delhi";
$names["O"]="Ooty";
echo getMapping($names,"M");
echo getMapping($names,"Mangalore");
function getMapping($values,$search)
{
if(array_key_exists($search,$values))
{
return $values[$search];
}
$key=array_search($search,$values);
if($key)
{
return $key;
}
return 0;
}
?>