PHP if语句快捷方式

时间:2012-07-20 23:21:36

标签: php arrays variables loops if-statement

我有一个从csv源导入数据的脚本。许多字段/列都在“代码”中。例如,学校字段是与实际学校名称相对应的数字编号。我需要在导入数据库之前将代码转换为实际名称。

我的问题是,除了使用“if”语句之外,还有更快的方法来执行此转换。一些需要转换的字段有20多个选项,所以我想知道是否有另一种方式来编写转换而不是20个if语句。现在我有:

if($data['school'] = 0001) {$school = "school1"; } 
if($data['school'] = 0002) {$school = "school2"; }
if($data['school'] = 0003) {$school = "school3"; }...

or i could use if else statements

所以我的问题是:有没有更快的方法通过某种数组或循环或其他类型的php语句,我可以加快这个过程?

2 个答案:

答案 0 :(得分:4)

  $school = 'school' . (int)$data['school'];

工作?

答案 1 :(得分:1)

你是否在文件中拥有所有这些内容,或者你必须手动将其输入PHP代码?

您可以将代码映射放入关联数组中,然后单个语句将获得正确的名称。

$schoolCodeToName = array(
    '0001' => 'school1',
    '0002' => 'school2',
    '0003' => 'school3'
    // ...
);

$school = $schoolCodeToName[ $data['school'] ];

如果您希望自己保存输入,那么您需要一些代码来加载数据文件并构建$schoolCodeToName数组。