在PHP中取消链接文件,然后使用file_put_contents创建新文件

时间:2014-05-30 04:18:41

标签: php json

我正在尝试使用file_put_contents放置一个json文件,但我发现它不会覆盖现有文件。我现在的想法是首先尝试unlink预先存在的文件,然后用户file_put_contents创建新文件。出于某种原因,这似乎不起作用。我感觉这两个操作发生得太快,第二步尝试在第一步完成之前运行。这是我的代码:

$filename = '<?php echo site_url() ?>js/salecomps.json';
if (is_readable($filename)) {
    chmod($filename, 0777);     
    unlink($filename);
}

$q = $this->db->query("SELECT RollNum , Address, v2_lat, v2_lng  FROM tblontario WHERE Municipality = 'AJAX' LIMIT 100");           
$json_string = json_encode($q->result(), JSON_PRETTY_PRINT);
file_put_contents('<?php echo site_url() ?>js/salecomps.json', $json_string);

请告诉我我做错了什么。感谢。

1 个答案:

答案 0 :(得分:2)

你使用错误的方式来包含<?php echo site_url()?>它不会给你文件路径试图改变

$filename = '<?php echo site_url() ?>js/salecomps.json';
file_put_contents('<?php echo site_url() ?>js/salecomps.json', $json_string);

 $filename = site_url().'js/salecomps.json';
 file_put_contents(site_url().'js/salecomps.json', $json_string);