如何使用for循环php在数组中保存多个结果
我正在处理一个CSV文件。当用户上传文件时。我解析CSV,然后从我需要的数组中选择数据。之后,我运行一个如何使用for循环php在数组中保存多个结果,php,loops,for-loop,Php,Loops,For Loop,我正在处理一个CSV文件。当用户上传文件时。我解析CSV,然后从我需要的数组中选择数据。之后,我运行一个for循环来验证数据并将结果保存在数组中。但问题是,当我打印结果数组时,只有1封电子邮件的结果,有4封电子邮件。有什么建议吗 $results = []; $valid_emails = 0; $invalid_emails = 0; for ($i = 0; $i < $csv_array['row_count']; $i++) { $email = $csv_array['da
for循环
来验证数据并将结果保存在数组中。但问题是,当我打印结果数组时,只有1封电子邮件的结果,有4封电子邮件。有什么建议吗
$results = [];
$valid_emails = 0;
$invalid_emails = 0;
for ($i = 0; $i < $csv_array['row_count']; $i++) {
$email = $csv_array['data'][$i][$email_column];
$result = validate_email($email);
$results['Email'] = $email;
if ($result) {
$results['Result'] = 'valid';
$valid_emails++;
} else {
$results['Result'] = 'invalid';
$invalid_emails++;
}
}
echo '<pre>';
print_r($results);
echo '</pre><br>';
echo $valid_emails . '<br>';
echo $invalid_emails . '<br>';
$results=[];
$valid_电子邮件=0;
$invalid_电子邮件=0;
对于($i=0;$i<$csv_数组['row_count'];$i++){
$email=$csv_数组['data'][$i][$email_列];
$result=验证电子邮件($email);
$results['Email']=$Email;
如果($结果){
$results['Result']='valid';
$valid_emails++;
}否则{
$results['Result']='invalid';
$invalid_emails++;
}
}
回声';
打印(结果);
回声“
”;
回显$valid_电子邮件。”
';
回送$invalid_电子邮件。”
';
使用$results[]
添加一个或多个元素:
$results=[];
$valid_电子邮件=0;
$invalid_电子邮件=0;
对于($i=0;$i<$csv_数组['row_count'];$i++){
$email=$csv_数组['data'][$i][$email_列];
$result=验证电子邮件($email);
$res['Email']=$Email;
如果($结果){
$res['Result']='valid';
$valid_emails++;
}否则{
$res['Result']='invalid';
$invalid_emails++;
}
$results[]=$res;
}
回声';
打印(结果);
回声“
”;
回显$valid_电子邮件。”
';
回送$invalid_电子邮件。”
';
$results
仅包含最后一次电子邮件验证。
您应该存储多个结果,而不仅仅是最后一个;-)
比如:
每次在循环中都覆盖结果,请尝试以下操作
$results=[];
$valid_电子邮件=0;
$invalid_电子邮件=0;
对于($i=0;$i<$csv_数组['row_count'];$i++){
$email=$csv_数组['data'][$i][$email_列];
$rowResult=[];
$result=验证电子邮件($email);
$rowResult['Email']=$Email;
如果($结果){
$rowResult['Result']='valid';
$valid_emails++;
}否则{
$rowResult['Result']=“无效”;
$invalid_emails++;
}
$results[]=$rowResult;
}
回声';
打印(结果);
回声“
”;
回显$valid_电子邮件。”
';
回送$invalid_电子邮件。”
';
$results[$i]['Email'] = $email;
if ($result) {
$results[$i]['Result'] = 'valid';
$valid_emails++;
} else {
$results[$i]['Result'] = 'invalid';
$invalid_emails++;
}
if ($result) {
$results[$i] = 'valid';
$valid_emails++;
} else {
$results[$i] = 'invalid';
$invalid_emails++;
}
$results = [];
$valid_emails = 0;
$invalid_emails = 0;
for ($i = 0; $i < $csv_array['row_count']; $i++) {
$email = $csv_array['data'][$i][$email_column];
$rowResult=[];
$result = validate_email($email);
$rowResult['Email'] = $email;
if ($result) {
$rowResult['Result'] = 'valid';
$valid_emails++;
} else {
$rowResult['Result'] = 'invalid';
$invalid_emails++;
}
$results[]=$rowResult;
}
echo '<pre>';
print_r($results);
echo '</pre><br>';
echo $valid_emails . '<br>';
echo $invalid_emails . '<br>';