将数组值转换为字符串,可写入从 $_GET 函数传入的文本文件
converting array value to string writable to text file incoming from $_GET function
无论我怎么尝试都没有解决我的问题
一个 php 文件接收带有定义变量的内容
<?php
$user_id=$_GET["user_id"];
$platform=$_GET["platform"];
$devicemodel=$_GET["devicemodel"];
$deviceuuid=$_GET["deviceuuid"];
--------
and then
$content =$content. " ".$user_id;
$content =$content. " ".$platform;
$content =$content. " ".$devicemodel;
$content =$content. " ".$deviceuuid;
$file = "activities.log";
file_put_contents($file, $content);
?>
当我看到活动内容时,我总是看到
数组()数组()数组()数组()
没关系,我尝试通过使用将数组类型更改为字符串或文本
*内爆,var_export,print_r函数
我总是看到 Array()Array()Array()Array() 写在创建的日志文件中。
当我写 echo $content;好像还不错。
我错过了什么?有没有人遇到同样的问题?
提前致谢。
编辑: 您需要向我们提供您使用代码的方法,如果是在表单中,或者通过 href
方法。
但是,我在下面给出的答案只是部分正确。其余的将取决于您向我们提供您的使用方式。
否则,我将删除此答案。
原回答
你每次都在不断地覆盖 $content =$content
。
因此,您需要连接它 $content .=$content
但不是第一个。
这是我测试过的,并且成功了:
<?php
$_GET["user_id"] = "ID";
$_GET["platform"] = "Platform";
$_GET["devicemodel"] = "Model";
$_GET["deviceuuid"] = "UUID";
$user_id= $_GET["user_id"];
$platform= $_GET["platform"];
$devicemodel= $_GET["devicemodel"];
$deviceuuid= $_GET["deviceuuid"];
$content =$content. " ".$user_id;
$content .=$content. " ".$platform;
$content .=$content. " ".$devicemodel;
$content .=$content. " ".$deviceuuid;
$file = "activities.log";
file_put_contents($file, $content);
?>
您可能还想在每行写入后添加 \n
,否则它将变成一长行,如果这是您想要的结果的话。
编辑:
根据 Ghost 在评论中所说的,使用:
$content = "$user_id $platform $devicemodel $deviceuuid";
而不是所有那些额外的变量。
这对我来说很好。试试这个,看看你是否还有同样的问题:
<?php
$_GET["user_id"] = "user_id";
$_GET["platform"] = "platform";;
$_GET["devicemodel"] = "device_model";;
$_GET["deviceuuid"] = "device_uuid";;
$user_id = $_GET["user_id"];
$platform = $_GET["platform"];
$devicemodel = $_GET["devicemodel"];
$deviceuuid = $_GET["deviceuuid"];
/*
and then
*/
$content = $content. " ".$user_id;
$content .= " ".$platform;
$content .= " ".$devicemodel;
$content .= " ".$deviceuuid;
$file = "activities.log";
file_put_contents($file, $content);
?>
如果这对您有效,那么问题出在您的代码上。如果这对您不起作用,那就是您的 PHP 安装。
编辑:Fred 比我还早!
其实我意识到只使用json_encode函数就解决了我的问题并开始将数组json数据转为字符串格式file_put_content 有效。
在这里,您可以为我提供完整的工作代码。顺便说一句,使用 $content=$content 行连接没有任何问题。"" 它仍然有效。
<?php
$content ="--başlık--".json_encode($_GET["title"]);
$emails="--email--".json_encode($_GET["user_email"]);
$tarih="--tarih--".json_encode($_GET["tarih"]);
$categori= "--kategori--".json_encode($_GET["kategori"]);
$picturename="--picturename--".json_encode($_GET["picturename"]);
$username="--username--".json_encode($_GET["username"]);
$user_id="--userid--".json_encode($_GET["user_id"]);
$platform="--platform--".json_encode($_GET["platform"]);
$devicemodel="--devicemodel--".json_encode($_GET["devicemodel"]);
$deviceuuid="--deviceuuid--".json_encode($_GET["deviceuuid"]);
$content =$content." ".$tarih;
$content =$content." ".$emails;
$content =$content. " ".$user_id;
$content =$content. " ".$username;
$content =$content. " ".$categori;
$content =$content. " ".$platform;
$content =$content. " ".$devicemodel;
$content =$content. " ".$deviceuuid;
$content =$content. " ".$picturenam;
$file = "/*******/public_html/testupload/logs/logs-tarih-".date("Ymd").".log";
$content ="date---".date("F j, Y, g:i a")."--".$content."\n";
//file_put_contents($file, $content, FILE_APPEND);
$fp=fopen($file,"a");
fputs($fp,$content);
fclose($fp);
无论我怎么尝试都没有解决我的问题 一个 php 文件接收带有定义变量的内容
<?php
$user_id=$_GET["user_id"];
$platform=$_GET["platform"];
$devicemodel=$_GET["devicemodel"];
$deviceuuid=$_GET["deviceuuid"];
--------
and then
$content =$content. " ".$user_id;
$content =$content. " ".$platform;
$content =$content. " ".$devicemodel;
$content =$content. " ".$deviceuuid;
$file = "activities.log";
file_put_contents($file, $content);
?>
当我看到活动内容时,我总是看到 数组()数组()数组()数组()
没关系,我尝试通过使用将数组类型更改为字符串或文本 *内爆,var_export,print_r函数
我总是看到 Array()Array()Array()Array() 写在创建的日志文件中。 当我写 echo $content;好像还不错。
我错过了什么?有没有人遇到同样的问题?
提前致谢。
编辑: 您需要向我们提供您使用代码的方法,如果是在表单中,或者通过 href
方法。
但是,我在下面给出的答案只是部分正确。其余的将取决于您向我们提供您的使用方式。
否则,我将删除此答案。
原回答
你每次都在不断地覆盖 $content =$content
。
因此,您需要连接它 $content .=$content
但不是第一个。
这是我测试过的,并且成功了:
<?php
$_GET["user_id"] = "ID";
$_GET["platform"] = "Platform";
$_GET["devicemodel"] = "Model";
$_GET["deviceuuid"] = "UUID";
$user_id= $_GET["user_id"];
$platform= $_GET["platform"];
$devicemodel= $_GET["devicemodel"];
$deviceuuid= $_GET["deviceuuid"];
$content =$content. " ".$user_id;
$content .=$content. " ".$platform;
$content .=$content. " ".$devicemodel;
$content .=$content. " ".$deviceuuid;
$file = "activities.log";
file_put_contents($file, $content);
?>
您可能还想在每行写入后添加 \n
,否则它将变成一长行,如果这是您想要的结果的话。
编辑:
根据 Ghost 在评论中所说的,使用:
$content = "$user_id $platform $devicemodel $deviceuuid";
而不是所有那些额外的变量。
这对我来说很好。试试这个,看看你是否还有同样的问题:
<?php
$_GET["user_id"] = "user_id";
$_GET["platform"] = "platform";;
$_GET["devicemodel"] = "device_model";;
$_GET["deviceuuid"] = "device_uuid";;
$user_id = $_GET["user_id"];
$platform = $_GET["platform"];
$devicemodel = $_GET["devicemodel"];
$deviceuuid = $_GET["deviceuuid"];
/*
and then
*/
$content = $content. " ".$user_id;
$content .= " ".$platform;
$content .= " ".$devicemodel;
$content .= " ".$deviceuuid;
$file = "activities.log";
file_put_contents($file, $content);
?>
如果这对您有效,那么问题出在您的代码上。如果这对您不起作用,那就是您的 PHP 安装。
编辑:Fred 比我还早!
其实我意识到只使用json_encode函数就解决了我的问题并开始将数组json数据转为字符串格式file_put_content 有效。 在这里,您可以为我提供完整的工作代码。顺便说一句,使用 $content=$content 行连接没有任何问题。"" 它仍然有效。
<?php
$content ="--başlık--".json_encode($_GET["title"]);
$emails="--email--".json_encode($_GET["user_email"]);
$tarih="--tarih--".json_encode($_GET["tarih"]);
$categori= "--kategori--".json_encode($_GET["kategori"]);
$picturename="--picturename--".json_encode($_GET["picturename"]);
$username="--username--".json_encode($_GET["username"]);
$user_id="--userid--".json_encode($_GET["user_id"]);
$platform="--platform--".json_encode($_GET["platform"]);
$devicemodel="--devicemodel--".json_encode($_GET["devicemodel"]);
$deviceuuid="--deviceuuid--".json_encode($_GET["deviceuuid"]);
$content =$content." ".$tarih;
$content =$content." ".$emails;
$content =$content. " ".$user_id;
$content =$content. " ".$username;
$content =$content. " ".$categori;
$content =$content. " ".$platform;
$content =$content. " ".$devicemodel;
$content =$content. " ".$deviceuuid;
$content =$content. " ".$picturenam;
$file = "/*******/public_html/testupload/logs/logs-tarih-".date("Ymd").".log";
$content ="date---".date("F j, Y, g:i a")."--".$content."\n";
//file_put_contents($file, $content, FILE_APPEND);
$fp=fopen($file,"a");
fputs($fp,$content);
fclose($fp);