php编码变量的麻烦

use*_*391 0 php variables

如果变量$ cardtype ==,我试图回显某些值

     $paymentmethod = if( $cardtype == 'visa' ) echo 'VSA'; 
elseif ( $cardtype == 'mastercard' ) echo 'MSC'; 
elseif ( $cardtype == 'mastercard' ) echo 'MSC'; 
elseif ( $cardtype == 'maestro' ) echo 'MAE'; 
elseif ( $cardtype== 'amex' ) echo 'AMX';
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

Jac*_*kin 6

$types = array( 'visa' => 'VSA', 'mastercard' => 'MSC', 
                'maestro' => 'MAE', 'amex' => 'AMX' );

echo ( isset( $types[ $cardtype ] ) ) ? $types[ $cardtype ] : 'Wrong card type';
Run Code Online (Sandbox Code Playgroud)

  • 使用`isset`比`array_key_exists`更短更快.它还具有更自然的语法. (4认同)
  • 小心翼翼的家伙,房子里有一个驾车的下行车.确保你的猎枪已加载. (3认同)