使用 PHP 将发布数据写入文件

2022-08-30 14:42:40

我需要使用下面的代码将数据发布到php文件中,该文件将将其保存在文本文件中。我只是不知道如何创建php文件来接收下面的数据并将其保存在文本文件中。尽可能简单。

try {  
    // Add your data  
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);  
    nameValuePairs.add(new BasicNameValuePair("stringData", "12345"));  
    nameValuePairs.add(new BasicNameValuePair("stringData", "AndDev is Cool!"));  
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));  

    // Execute HTTP Post Request  
    HttpResponse response = httpclient.execute(httppost);  
    String responseText = EntityUtils.toString(response.getEntity()); 
    tv.setText(responseText);             
} catch (ClientProtocolException e) {  
    // TODO Auto-generated catch block  
} catch (IOException e) {  
    // TODO Auto-generated catch block  
}  

答案 1

简单如下:

file_put_contents('test.txt', file_get_contents('php://input'));

答案 2

1) 在 PHP 中,要从传入请求获取 POST 数据,请使用 $_POST 数组。PHP 中的 POST 数组是关联的,这意味着每个传入参数都是一个键值对。在开发过程中,了解您在_POST美元中实际获得的内容是有帮助的。您可以使用 printf() 或 var_dump() 转储内容,如下所示。

var_dump($_POST);

- 或 -

printf($_POST);

2) 选择一种有用的基于字符串的格式来存储数据。PHP 有一个 serialize() 函数,你可以用它来把数组变成一个字符串。将数组转换为 JSON 字符串也很容易。我建议使用JSON,因为在各种语言中使用此表示法是很自然的(而使用PHP序列化会在某种程度上将您绑定到将来使用PHP)。在 PHP 5.2.0 及更高版本中,内置了 json_encode() 函数。

$json_string = json_encode($_POST);

// For info re: JSON in PHP:
// http://php.net/manual/en/function.json-encode.php

3) 将字符串存储在文件中。尝试使用 fopen()、fwrite() 和 fclose() 将 json 字符串写入文件。

$json_string = json_encode($_POST);

$file_handle = fopen('my_filename.json', 'w');
fwrite($file_handle, $json_string);
fclose($file_handle);

// For info re: writing files in PHP:
// http://php.net/manual/en/function.fwrite.php

您需要为使用的文件路径和文件名提供特定的位置和方法。

注意:还有可能使用$HTTP_RAW_POST_DATA直接获取HTTP请求的POST正文。原始数据将进行 URL 编码,并且它将是一个字符串,您可以如上所述写入该文件。


推荐