生成PHP数组文件

1. 解释型语言的妙处之一,在于可以动态生成代码再调用执行~
2. 对于数据量不大(几千条?)的(key,value),存成数组文件,执行查找操作,效率应该是好于数据库操作的;
3. php的数组,是hash数组,默认情况下,key是0, 1, 2, ...

顺便说,这些是缺乏乐趣的工作,即使我觉得";"代表一个语句的结束已经天经地义;

不多说了,代码:
生成数组文件:

if (! file_exists($srcFilePath)) {
        return false;
}

$info = array();
$srcInfo = file($srcFilePath);
if (empty($srcInfo)) {
        return false;
}

foreach ( $srcInfo as $line) {
        $line = trim($line);
        if ( empty($line) ) {
                continue;
        }
        list($key, $value) = explode(' ', $line);
        $cityInfo[$citycode] = $city;
}
$content = "<?php\n";
$content .= "\$myinfo = ". var_export($info, true) . ";\r\n";
$content .= "?>";
file_put_contents($cacheFilePath, $content);

查找

/* 通过key查找value */

include($cacheFilePath);
if ( empty($myinfo) ) {
    return false;
}
if (isset($myinfo[$key])) {
    return $myinfo[$key];
}
return "";

/*通过value查找key*/

include($cacheFilePath);
if ( empty($myinfo) ) {
    return false;
}

foreach ( $myinfo as $key => $value) {
    if ($value == $search_value) {
        return $key;
   }
}

上一篇:【转】使用TortoiseSVN搭建本地的版本控制库


下一篇:2013ACM/ICPC亚洲区南京站现场赛-HDU4809(树形DP)