我有点迷失了,因为我在PHP中“绿色”。
请你教我如何解决这个问题:
在“POST”
(错:)
<?php
$newData = $_POST["sendData"];
if(isset($_POST['sendData'])){
$file = fopen('fileToOpen.php', 'a');
foreach($file as $key => $val)
{
$data[$key] = explode("|", $val);
}
for($k = 0; $k < sizeof($file); $k++)
{
unset($data[$k][3]);
}
$data[$k][3] = "$newData";
fwrite($file, $data[$k][3]);
fclose ($file);
}
?>这是错误的,因为它继续写:
data1|data2|data3|oldDatanewData
而不是重写:
data1|data2|data3|newData
还有其他技术来实现类似的目标吗?也许和file_put_contents在一起?我是不是错过了implode
谢谢!
发布于 2011-02-16 22:42:31
不知道你想要什么,但也许你只需要序列化和取消序列化数组。
$data_array = unserialize(file_get_contents('fileToOpen.php'));
$data_array[$key_you_want_to_change] = $new_data;
file_put_contents('fileToOpen.php', serialize($data_array));发布于 2011-02-16 22:56:39
$newData =$POST的‘sendData’;
if(isset($_POST['sendData'])){
$file = "fileToOpen.php";$oldData = file_get_contents($file);
$oldData = eregi_replace("\n","",$oldData);
$FullDataArray =爆发(“?”,$oldData);$oldDataArray =爆发(“x”,$FullDataArray1);
$oldDataArray3 = $newData;
$newDataString .=“
foreach($oldDataArray as $key=>$val) {
$newDataString .= $val;
if($key!="3") {
[中英文摘要] $newDataString .=“x”;
}
}
$fh = fopen($file,'w');
fwrite($fh,$newDataString);
fclose($fh);
}
?>
https://stackoverflow.com/questions/5022700
复制相似问题