我有一个文本文件data.txt,其中包含“引号”和用逗号分隔中的字词,如下所示:
“企业邮箱”, “ID_NAME”, “城市”, “姓名”, “姓名”, “怎么做”, “日期” “my@exemple.com”, “125”, “NY”, “井”, “汤米”, “”, “20130101” “hisgoodemail@exemple.com”, “132”, “NY”, “等待”, “约翰”, “”, “20120101” “hisbadmailxemple.com”, “325”, “CH”, “井”, “唐”, “”, “20130101” “goodmail3@exemple.com”, “222”, “NY”, “羊毛”, “约翰”, “”, “20140101”
我会删除不良记录/注册的电子邮件标准,例如我注册/记录。
所以我检查了电子邮件格式,并删除了包含错误格式电子邮件的错误记录。
我希望将新数据放在另一个文件TEXT中,其中在“引号”中并用逗号分隔,如下所示:
“企业邮箱”, “ID_NAME”, “城市”, “姓名”, “姓名”, “怎么做”, “日期” “my@exemple.com”, “125”, “NY”, “井”, “汤米”, “”, “20130101” “hisgoodemail@exemple.com”, “132”, “NY”, “等待”, “约翰”, “”, “20120101” “goodmail3@exemple.com”, “222”, “NY”, “羊毛”, “约翰”, “”, “20140101”
但是当我将新数据放入新文件时,它缺少“引号”和逗号:
$fileData = 'data.txt';
if (($handle = fopen($fileData, "r")) !== FALSE)
{
fgetcsv($handle, 0, ',');
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
{
$arrayContainsFileData = array
(
'e_mail' => $data[0],
'id_name' => $data[1],
'city' => $data[2],
'name' => $data[3],
'firstname' => $data[4],
'how' => $data[5],
'date' => $data[6]
);
// var_dump($arrayContainsFileData);
// exit();
$e_mail = $arrayContainsFileData['e_mail'];
$e_mail = str_replace(' ', '', $e_mail);
//remove bad record/registration with the criterion of email
if(!VerifyEmailFormat($e_mail))
{ //echo 'bad format'';
unset($arrayContainsFileData['e_mail']);
unset($arrayContainsFileData['id_name']);
unset($arrayContainsFileData['city']);
unset($arrayContainsFileData['name']);
unset($arrayContainsFileData['firstname']);
unset($arrayContainsFileData['how']);
unset($arrayContainsFileData['date']);
}
// var_dump($arrayContainsFileData);
// exit();
$creationNewData = 'newCleanData' . date('Y_m_d__H_i_s__u'). '.txt';
$openNewData = fopen($creationNewData, "a+");
foreach ($arrayContainsFileData as $value)
{
fputs($openNewData, $value.' ');
}
fclose($openNewData);
}
}
//__halt_compiler
我该如何将这些单词放在“引号”中并用逗号分隔?
答案 0 :(得分:0)
您可以使用php implode函数(http://ca3.php.net/implode)将每个数组首先转换为字符串,而不是循环遍历数组的每个元素。
$str = '"' . implode('","', $arrayContainsFileData) . '"';
fputs($openNewData, $str);