Example #1
0
function data_object($db_name, $table_name, $base_name, $data = null, $encode = true)
{
    $filename = jsondb_file($db_name, $table_name, $base_name);
    //写入操作
    if ($data) {
        if ($encode) {
            $data = json_encode($data);
        }
        file_put_contents($filename, $data);
        return $data;
    } else {
        //读出操作
        if (!file_exists($filename)) {
            return [];
        }
        $data_str = file_get_contents($filename);
        if ($data_str === null) {
            return [];
        }
        $res = json_decode($data_str, true);
        if (empty($res)) {
            return [];
        }
        return $res;
    }
}
Example #2
0
function save_keyword($kword_type, $device, $summary, $detail_item)
{
    global $CONFIGS, $DEVSAV;
    $db_name = 'grep-datas';
    $table_name = null;
    switch ($kword_type) {
        case 'kword_title':
            $table_name = 'historys';
            break;
        case 'kword_interest':
            $table_name = 'interests';
            break;
        case 'kword_cart':
            $table_name = 'carts';
            break;
        case 'kword_favorite':
            $table_name = 'favorites';
            break;
        case 'kword_submit':
            $table_name = 'searchs';
            break;
        case 'kword_account':
            $table_name = 'accounts';
            break;
        default:
            return false;
    }
    if (!array_key_exists('ID', $DEVSAV)) {
        $ori_data = new_data($db_name, $table_name, $device);
        $DEVSAV['ID'] = $ori_data['general']['ID'];
    } else {
        $ID = $DEVSAV['ID'];
        $ori_data = data_object($db_name, $table_name, $ID . '.json');
        if (empty($ori_data)) {
            $ori_data = new_data($db_name, $table_name, $device, $ID);
        }
        $ori_data['general']['TIME'] = jsondb_date();
    }
    $ori_data['data']['summary'] = $summary;
    $detail_url = $ori_data['data']['details'];
    $detail_file = jsondb_file($db_name, $table_name, basename($detail_url));
    file_put_contents($detail_file, json_encode($detail_item) . "\r\n", FILE_APPEND | LOCK_EX);
    jsondb_data($db_name, $table_name, $device, $ori_data);
}