是否值得两次调用php fclose?

时间:2017-08-18 16:31:23

标签: php performance fclose

我有一个脚本设置为每小时运行一次。     

$refresh_token_file = fopen("refresh_token", "r+") or die("Unable to open refresh_token file!");
$refresh_token = fgets($refresh_token_file);
fclose($refresh_token_file);

$url = 'https://api.coolwebsite.com';

$fields = array(
    'client_id'     => '007',
    'refresh_token' => $refresh_token
    );

$curl = curl_init($service_url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_POST, count($fields));
curl_setopt($curl, CURLOPT_POSTFIELDS, $fields);
$curl_response = curl_exec($curl);
curl_close($curl);
$json = json_decode($curl_response, true);

if(isset($json['access_token']) && isset($json['refresh_token'])){
    $access_token = $json['access_token'];
    $refresh_token = $json['refresh_token'];

    $access_token_file = fopen("access_token", "w") or die("Unable to open access_token file!");
    $refresh_token_file = fopen("refresh_token", "w") or die("Unable to open refresh_token file!");

    fwrite($access_token_file, $access_token);
    fwrite($refresh_token_file, $refresh_token);

    fclose($access_token_file);
    fclose($refresh_token_file);
}else{
    die("Error @ Json");
}

如您所见,我打开并关闭同一个文件(refresh_token)两次。是否值得努力让它只关闭一次?

这可能是过度思考;我得到了番茄钟时间。感谢您的关注。

1 个答案:

答案 0 :(得分:0)

打开和关闭文件是一项昂贵的操作,因为它们需要服务器分配资源和设置缓冲区。所以最好保持打开文件打开,需要进一步的工作。这意味着你只需打开一次,完成所有操作,然后只关闭它。