php简单的if语句,精简一个if语句

if(in_array($file_ext, $ext_arr['image']))

$file_path='uploads/image/'.$new_file_name;

if(in_array($file_ext, $ext_arr['media']))

$file_path='uploads/media/'.$new_file_name;

if(in_array($file_ext, $ext_arr['file']))

$file_path='uploads/file/'.$new_file_name;

大家看看上面的代码如何精简一下。

回复内容:

if(in_array($file_ext, $ext_arr['image']))

$file_path='uploads/image/'.$new_file_name;

if(in_array($file_ext, $ext_arr['media']))

$file_path='uploads/media/'.$new_file_name;

if(in_array($file_ext, $ext_arr['file']))

$file_path='uploads/file/'.$new_file_name;

大家看看上面的代码如何精简一下。

把 $ext_arr 给取缔了,改成

$types_of_extensions = array(

'jpg' => 'image',

'png' => 'image',

'gif' => 'image',

'rmvb' => 'media',

'mp3' => 'media',

'doc' => 'file',

'pptx' => 'file'

/* ... and many more, whatever u want */

);

$file_path = 'uploads/' . $types_of_extensions[$file_ext] . '/' . $new_file_name;

foreach(array('image', 'media', 'file') as $type)

foreach($ext_arr[$type] as $t) @$ext[$t] = $type;

$file_path = "uploads/{$ext[$file_ext]}/$new_file_name";

只是讨论精简的话,这个成功精简三行的样子而且字数上也少很多,两行的样子比较难看我就不缩了~

精简减不了 流程上可优化

if(in_array($file_ext, $ext_arr['image']))

$file_path='uploads/image/'.$new_file_name;

elseif(in_array($file_ext, $ext_arr['media']))

$file_path='uploads/media/'.$new_file_name;

elseif(in_array($file_ext, $ext_arr['file']))

$file_path='uploads/file/'.$new_file_name;

foreach (array('image', 'media', 'file') as $type) {

if(in_array($file_ext, $ext_arr[$type])){

$file_path="uploads/$type/$new_file_name";

break;

}

}

这代码高亮不支持高亮 PHP 里的字符串内插么……

相关标签:php

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值