繁体   English   中英

PHP代码显示CSV文件,并带有删除每行的选项

[英]PHP code to display CSV file with option to remove each line

我能够组合一个代码来显示CSV文件,其中包含新闻通讯组的电子邮件列表(每行是一个电子邮件地址)。 我正在努力在每个电子邮件地址的前面添加“删除”功能,以防电子邮件不再有效(或用户不再希望接收电子邮件)。 这是我所拥有的:

函数my_magic_function(){

$file = TEMPLATEPATH."/user_list.csv";

if (file_exists($file )) {

    $handle = fopen($file , "r+");

    echo '<p><a href="/wp-content/themes/summer/user_list.csv"> Download the CSV File</a></p>';

    $contents = fread($handle, filesize($file));

    $emails = explode(',',$contents);

    for ($x=0; $x<count($emails) -1; $x++){

        echo $emails[$x]."; (remove)<br />";

    }

    fclose($handle);

}else{

    echo "empty";

}

}

我想念什么? 如何使“(删除)”删除该特定电子邮件地址(或行)?

谢谢

输出删除链接:

 echo "<a href=delete.php?mail=$email[x]>delete</a> ";

在该删除脚本中,再次读取数组中的电子邮件列表。 使用array_search()查找条目,然后对返回的键执行简单的unset() 然后写回文件。

 $emails = str_getcsv(file_get_contents("emails.txt"));

 $del_index = array_search($emails, $_GET["mail"]);
 unset($emails[ $del_index ]);

 file_put_contents("email.txt", join(", ", $emails));

还要考虑使用foreach而不是for循环。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM