我如何使用php中的读/写逐个添加电子邮件

时间:2016-06-21 08:46:27

标签: php

如何使用php中的读/写逐个添加电子邮件

我得到以下输出并创建一个名为“更新”的文件夹更新文件夹包含用户输入的一封电子邮件,并且用户输入另一个电子邮件ID已经存在的电子邮件ID替换为新的电子邮件ID为什么?

我需要一个一个名为

的电子邮件ID
apap@gmail.com
asadsd@gmail.com

这是我的代码,请查看

<form action="demo.php" method="post">
<input type="text" name="textEmail">
<input type="submit" value="send">
</form>

Demo.php文件是

<?php

    // Open the text file
    $f = fopen("update.txt", "w");

    // Write text


$text = strtr(" ",'&nbsp;', $_POST['textEmail']);

    fwrite($f,$text);
    //fwrite($f,$text); 
    // Close the text file
    fclose($f);

    // Open file for reading, and read the line
    $f = fopen("update.txt", "r");

    // Read text
    echo fgets($f); 
    fclose($f);

    ?>

4 个答案:

答案 0 :(得分:4)

以追加模式而不是写入模式打开文件 将“w”替换为“a”

$f = fopen("update.txt", "a");


来自:http://php.net/manual/en/function.fopen.php

  

'w'仅限写作;将文件指针放在文件的开头,并将文件截断为零长度。如果该文件不存在,请尝试创建它。

     

'a'仅限写作;将文件指针放在文件的末尾。如果该文件不存在,请尝试创建它...

答案 1 :(得分:2)

打开您的文件作为附加模式,这样您就不需要打开文件两次,以便在文件中写入,每行一封电子邮件,您需要在每封电子邮件后使用\n。对于读取使用while循环来读取文件的结尾并使用fgets确保它一次读取整行。

$myfile = fopen("update.txt", "a+");

$txt = $_POST['textEmail']."\n";
fwrite($myfile, $txt);
while(!feof($myfile)) {
  echo fgets($myfile) . "<br/>";
}
fclose($myfile);

文档:php_file_createphp_file_open

答案 2 :(得分:0)

我不确定你想要实现什么,但我会澄清文件写入和文件追加之间的区别。

在&#39; w&#39;中打开时写入文件模式从当前文件指针位置写入,当在&#39; w&#39;中打开时mode是文件的开头,要在此模式下更改此位置,请使用fseek()方法。

在&#39; a&#39;中打开时写入文件mode(append mode)将文件指针设置为文件中的最后一个位置,而在php中,特别是当调用fwrite()时,它将写入文件的末尾。

附加文件示例

写入前update.txt的内容:

sometext
sometext2

写入文件的代码

$f = fopen('update.txt', 'w');

//Description of 'a' mode from php manual
//Open for writing only; place the file pointer at the end of the file.
//If the file does not exist, attempt to create it. In this mode,
//fseek() has no effect, writes are always appended.

fwrite($f, "somevalue" . "\n");
fclose($f);

结果在包含内容的update.txt中

sometext
sometext2
somevalue

本例中使用的函数的Php文档:

fopen() fwrite()

答案 3 :(得分:0)

ranges = structure(list(Range = 1:3, Start = structure(c(16071, 16445, 
16911), class = "Date"), End = structure(c(16129, 16524, 17086
), class = "Date")), .Names = c("Range", "Start", "End"), row.names = c(NA, 
-3L), class = "data.frame")

events = structure(list(Event = 1:4, Date = structure(c(16072, 16149, 
16526, 17031), class = "Date")), .Names = c("Event", "Date"), row.names = c(NA, 
-4L), class = "data.frame")

请你试试demo.php吗?