Ответ 1
Прост как:
file_put_contents('test.txt', file_get_contents('php://input'));
Мне нужно отправить данные, используя приведенный ниже код, в файл 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
}
Прост как:
file_put_contents('test.txt', file_get_contents('php://input'));
1) В PHP, чтобы получить данные POST от входящего запроса, используйте массив $_POST. Массив POST в PHP ассоциативен, что означает, что каждый входящий параметр будет парой ключ-значение. В разработке полезно понять, что вы на самом деле получаете в $_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
Вам нужно найти конкретное местоположение и методологию для используемых путей и имен файлов.
Примечание. Также есть возможность напрямую получить объект POST запроса HTTP, используя $HTTP_RAW_POST_DATA. Необработанные данные будут кодироваться по URL-адресу, и это будет строка, которую вы можете записать в файл, как описано выше.