我想显示POST
变量的内容,但我的输出是空的。
<?php
$dir = '/var/www/devData/test';
// create new directory with 777 permissions if it does not exist yet
// owner will be the user/group the PHP script is run under
if ( !file_exists($dir) ) {
mkdir ($dir, 0777);
}
$stringData = print_r($_POST['data'], true);
$file = "/var/www/devData/test/ciao.txt";
$fh = fopen($file, 'a+') or die("can't open file");
$fla = 0;
$arr = array();
$i = 0;
while(!feof($fh)) {
$theData = fgets($fh, filesize($file));
array_push($arr,$theData);
//echo $arr[$i];
$i++;
}
echo $stringData;
fclose($fh);
?>
当我调用函数fwrite
时,变量$stringData
将存储到文件中。
这是调用php文件的函数:
$.post("JS/foo.php", {data: options_label}, function(result){alert(options_label) }, "json");
其中options_label
是一个数组。
我尝试使用decode_json
等等,但$stringData
仍为空。
答案 0 :(得分:0)
我认为问题出在这里:
$stringData = print_r($_POST['data'], true);
如果你想将$ _POST的内容存储在file.txt中,你应该将$ _POST ['data']转换成如下字符串:
$stringData = "";
foreach ($_POST['data'] as $key=>$val) {
$stringData .= $key . ": " . $val . "\n\r";
}