How to append data to file using file_put_contents()?

自闭症网瘾萝莉.ら 提交于 2021-02-17 02:47:13

问题


I have an android app that sends multiple data from okhttp3 but i can't find a way to log all the data sent in php..My current log only houses the last record(Show below). My best guess is that the php file data is being overwritten until the last record..How can I log all the data sent? And yes all the data is being sent out from the android app...

index.php

if (isset($_POST))
 {
file_put_contents("post.log",print_r($_POST,true));
}

Sample post.log

 Array
(
    [date] =>  02 Aug, 12:22
    [company] => Assert Ventures
    [lattitude] => 32.8937542
    [longitude] => -108.336584
    [user_id] => Malboro
    [photo_id] => 1
)

What I want

(
   [date] =>  02 Aug, 12:22
   [company] => Three Ventures
   [lattitude] => 302.8937542
   [longitude] => -55.336584
   [user_id] => Malboro
   [photo_id] => 1
),
(
   [date] =>  02 Aug, 12:22
   [company] => Two Ventures
   [lattitude] => 153.8937542
   [longitude] => -88.336584
   [user_id] => Malboro
   [photo_id] => 1
),
(
    [date] =>  02 Aug, 12:22
    [company] => Assert Ventures
    [lattitude] => 32.8937542
    [longitude] => -108.336584
    [user_id] => Malboro
    [photo_id] => 1
)

回答1:


You need to pass third parameter FILE_APPEND;

So your PHP code will look something like this,

if (isset($_POST))
 {
file_put_contents("post.log",print_r($_POST,true),FILE_APPEND);
}

FILE_APPEND flag helps to append the content to the end of the file instead of overriding the content.




回答2:


I think you should add FILE_APPEND flag.

<?php
$file = 'post.log';
// Add data to the file
$addData = print_r($_POST,true);
// Write the contents to the file, 
// using the FILE_APPEND flag to append the content to the end of the file
// and the LOCK_EX flag to prevent anyone else writing to the file at the same time
file_put_contents($file, $addData, FILE_APPEND | LOCK_EX);
?>


来源:https://stackoverflow.com/questions/38852041/how-to-append-data-to-file-using-file-put-contents

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!