检查json文件的大小

时间:2016-10-22 13:21:50

标签: php

我有谷歌的几个例子,但似乎没有工作,我正在尝试做什么:

if(isset($_POST)) {
    // json parse   
    $json = file_get_contents('php://input');
    // save the json files for later
    // make sure they contain data
    if(filesize($json) < 16 && empty(trim(file_get_contents($json))) )
    {
        $file = 'links-'.rand(10000000,99999999).".txt";
        file_put_contents('Links/' . trim($file), $json);       
    }
}
?>

如果文件大小为空,请不要创建文件,但上面的代码仍然存在(这是我尝试过的最新代码),我是否遗漏了明显的内容?

2 个答案:

答案 0 :(得分:1)

file_get_contents()函数将内容读入字符串。一旦它在内存中,你就不需要再试一次。

if (isset($_POST)) {
    // populate the json variable   
    $json = file_get_contents('php://input');
    // if the variable is not empty
    // save the content for later
    if (!empty($json))
    {
        $file = 'links-'.rand(10000000,99999999).".txt";
        file_put_contents('Links/' . trim($file), $json);       
    }
}
?>

答案 1 :(得分:0)

非常简单的解决方案是解码json,现在可以检查解码的json是否为空数组。

$json = file_get_contents('php://input');
$json = json_decode($json);// decode json`
if (empty($json)) {
   // json is empty
}