douchuanchai2793 2016-11-30 10:11
浏览 133

fclose()期望参数1是资源

I've a problem with a PHP script that creates some csv file. The PHP script is the following:

<?php

    $inputFile = "/var/www/vhosts/pecso.it/httpdocs/test/export30gg.txt";

    $csvData = file_get_contents($inputFile);

    $rows = explode(PHP_EOL, $csvData);

    $rowsArray = array();
    foreach ($rows as $row) {
        $rowsArray[] = str_getcsv($row);
    }

    $csvFileName = "/var/www/vhosts/pecso.it/httpdocs/graphs/export30gg.csv";

    if (file_exists($csvFileName)){
        unlink($csvFileName);
    }

    $csvFile = fopen($csvFileName, "w");
    $csvFileForGraph = fopen($csvFileNameForGraph, "w");    

    for ($i = 0; $i < count($rowsArray); $i++) {
        $dateTime = DateTime::createFromFormat('d/m/Y', $rowsArray[$i][0]);
        $d = $dateTime->format('Y-m-d');
        $rowsArray[$i][0] = $d;
        $rowForGraph = $rowsArray[$i];
        unset($rowForGraph[1]);
        $row = implode(',',$rowsArray[$i]);
        $rowForGraph = implode(',',$rowForGraph);
        file_put_contents($csvFileName, $row.PHP_EOL , FILE_APPEND);
    }

    fclose($csvFileName);
?>

This script works correctly and csv file export30gg.csv is correctly created but, every time I run this script, I've the following error:

fclose() expects parameter 1 to be resource

Can you help me, please?

  • 写回答

2条回答 默认 最新

  • douweng7083 2016-11-30 10:15
    关注

    It should be like

    fclose($csvFile);
    

    because you've stored recourse link in $csvFile, not in $csvFileName

    评论

报告相同问题?

悬赏问题

  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目