1

我是 php 新手,想探索如何以不同的方式实现相同的目标。我有以下工作代码,并希望看到更好的编码方式。任何建议表示赞赏。

<?php
$districts = "Aizawl";

$fc = "First City";
$sc = "Second City";
$tc = "Third City";

if ($districts == "Aizawl") {
    $city = $fc;
} elseif ($districts == "Lunglei") {
    $city = $sc;
} elseif ($districts == "Saiha") {
    $city = $tc;
}
?>
<?php
echo $city;
?>
4

6 回答 6

3
<?php
$districts = "Aizawl";

$districts_city = array(
    'Aizawl' => 'First City',
    'Lunglei' => 'Second City',
    'Saiha' => 'Third City',
);

$city = $districts_city[$districts];
echo $city;
于 2013-07-24T13:38:19.277 回答
2
$districts = 'Aizawl';

$map = array(
  'Aizawl' => 'First city',
  'Lunglei' => 'Second city',
  'Saiha' => 'Third city',
);

if (isset($map[$districts])) {
  $city = $map[$districts];
} else {
  // show error...
}
于 2013-07-24T13:38:05.247 回答
2

使用关联列表或哈希表。

$array = array(
    "Aizwal" => "First City",
    "foo" => "2nd",
    "bar" => "3rd",
);

$city=$array[$districts]
于 2013-07-24T13:40:10.017 回答
0

波纹管代码将很有帮助

<?php
 $i=2;

 switch ($i) {
case 0:
    echo "i equals 0";
    break;
case 1:
    echo "i equals 1";
    break;
case 2:
    echo "i equals 2";
    break;
 }
 ?>
于 2013-07-24T13:38:53.527 回答
-1

使用 switch 语句

switch ($districts) {
case "Aizawl":
    $city=$fc;
    break;
case "Lunglei":
    $city=$sc;
    break;
case "Saiha":
    $city=$tc;
    break;
}
于 2013-07-24T13:34:56.950 回答
-1

使用switch声明。此外,如果您没有在其他地方使用$fc,$sc$tc, 变量,我只需将变量设置为语句$city中的字符串内容。switch

<?php

$districts="Aizawl";

$fc="First City";
$sc="Second City";
$tc="Third City";

switch($districts) {
    case "Aizawl":
        $city=$fc;
        break;
    case "Lunglei":
        $city=$sc;
        break;
    case "Saiha":
        $city=$tc;
        break;
}

echo $city;
于 2013-07-24T13:35:10.870 回答