如何解压缩并读取服务器内部的文件?

时间:2019-07-11 10:29:27

标签: php server readfile

我在远程服务器上有3个json.gz文件。这三个文件都需要解压缩,读取,并且所有数据都必须使用PHP在DB中添加。如果脚本在我的电脑中,我这样做就没有问题,但是这需要在服务器内部进行,因为我将为脚本设置一个cron以便每天执行。 我该怎么做? 请提供任何帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用反引号运算符将其包围在php中运行linux命令,这样您就可以执行以下操作。

// gunzip the file
$cmd = `gunzip /path/to/compressed_file.json.gz`;
// read the file content 
$json = file_get_contents("/path/to/compressed_file.json");
// insert the data if it was read correctly
if($json){
    array($json); // trying to indicate here that you would use this value in a prepared statement in either pdo or mysqli
    $sql = "insert into table_name (datafield) values (?);"
}

您将需要整理sql或向我们提供有关数据库的更多信息

运行gunzip时,它将解压缩文件并删除.gz扩展名。