>백엔드 개발 >PHP 튜토리얼 >一起来精简这个语句

一起来精简这个语句

WBOY
WBOY원래의
2016-06-06 20:47:371303검색

if($type==0)
$type_value="a";
if($type==1)
$type_value="b";
if($type==2)
$type_value="c";

看看可以精简到什么程度。主要是为了得到$type_value的值,可以增加第三或第四个变量
我的做法如下:

$arr=array('a','b','c');
$type_valu=$arr[$type];

回复内容:

if($type==0)
$type_value="a";
if($type==1)
$type_value="b";
if($type==2)
$type_value="c";

看看可以精简到什么程度。主要是为了得到$type_value的值,可以增加第三或第四个变量
我的做法如下:

$arr=array('a','b','c');
$type_valu=$arr[$type];

方法一:高逼格,$type_value=$type==0?'a':($type==1?'b':($type==2&&'c'))
方法二:用ascii码,$type_value=chr($type+97);
不用谢,请叫我红领巾

<code class="lang-cpp">'a' + type
</code>

类似的php写法请自行YY

另外,你的那种想法其实"abc"[$type]就行了。

<code class="lang-php">$types  = array('x', 'y', 'z', ...);
$values = array('a', 'b', 'c', ...);
$res = array_combine($types, $values);
$type_value = $res($type);
</code>

前提:

  • $types值不重复
  • $types值很多
  • $types, $values无规则
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.