• 生成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 ";
    $content .= "$myinfo = ". var_export($info, true) . "; ";
    $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;
       }
    }

  • 相关阅读:
    vue 简易弹框
    js瀑布流触底动态加载数据
    ios解决大转盘层级以及闪烁bug
    dom 相同父节点查找
    为什么 EXISTS(NOT EXIST) 与 JOIN(LEFT JOIN) 的性能会比 IN(NOT IN) 好
    exists(关联表)与left join 的效率比较
    【SpringCloud】Re04 Gateway
    【SpringCloud】Re03 Feign
    【SpringCloud】 Re02 Nacos
    【SpringCloud】 Re01
  • 原文地址:https://www.cnblogs.com/wangluochong/p/4890851.html
Copyright © 2020-2023  润新知