你会怎么做这个PHP代码?

Jas*_*vis 1 php

是否有更好的方法来编写下面的内容,然后使用switch或if/else语句?就像这是一个PHP的可变变量($$ var)可以使用的情况?如果是这样,您将如何编写此代码?

$type = 2;

switch ($type) {
 case 1:
   $type = 'gif';
   break;
 case 2:
   $type = 'jpg';
   break;
 case 3:
   $type = 'png';
   break;
 default:
   $type = 'jpg';
   break;
}
Run Code Online (Sandbox Code Playgroud)

Gum*_*mbo 12

我用了一个数组:

$types = array(
    1 => 'gif',
    2 => 'jpg',
    3 => 'png'
);
if (isset($types[$type])) {
    $type = $types[$type];
} else {
    $type = 'jpg';
}
Run Code Online (Sandbox Code Playgroud)


Zed*_*Zed 7

$types = array(1 => 'gif', 2 => 'jpg', 3 => 'png', 4 => 'jpg');
Run Code Online (Sandbox Code Playgroud)

...

array_key_exists($type, $types) ? $types[$type] : 'jpg';
Run Code Online (Sandbox Code Playgroud)