php - PHP - 从数据库中获取出生日期,将其转换为年龄,如果年龄超过 15 岁,则从数据库中回显他们的电子邮件
问题描述
我有一个正在做的学校项目。我必须从数据库表中获取每个用户的出生日期,然后计算每个用户的年龄。然后,如果他们的年龄超过 15 岁,那么我需要回显他们的电子邮件。
当我运行这段代码时,它只会说 Array,而不是用户的电子邮件。我知道这是因为我没有 foreach $email_array,但我不知道如何在与年龄相同的 foreach 中执行此操作。
我一直在研究组合 foreach 数组,但似乎无法让它工作。
在此先感谢您的帮助。
到目前为止,以下是我的代码:
<?php
session_start();
include('phpcodes/connection.php');
$import="SELECT * FROM table";
$result = mysqli_query($con,$import);
while($row = mysqli_fetch_array($result)) {
$emaillist .= $row['email'] . ",";
$doblist .= $row['dob'] . ",";
}
$dob_array = explode(",",$doblist);
$email_array = explode(",",$emaillist);
foreach($dob_array as $ages) {
$today = date("d-m-Y");
$diff = date_diff(date_create($ages), date_create($today));
$age = $diff->format('%y');
if ($age > '15') {
echo $email_array;
}
}
?>
解决方案
您可以循环key
和value
循环foreach
$arrayAge = [
13,
22,
17
];
$arrayName = [
'Lisa',
'Selina',
'Bianca'
];
foreach ($arrayAge as $key => $age) {
echo $age . PHP_EOL;
echo $arrayName[$key];
}
如果您在while
循环中进行了比较,则不需要第二个循环:
while($row = mysqli_fetch_array($result)) {
if (/* the comparation */) {
echo $row['email'];
}
}
推荐阅读
- python - 在 python3 中获取 aws s3 ls s3://mybucket/mykey/ 的结果
- python - Scipy 正常 PDF 求和大于 1 的值
- c# - 由于我们可以通过 asp-route-id 将整数从 razor 页面传递给控制器,那么我们如何传递一个字符串呢?
- opencv - 模块 opencv_sfm 已禁用,因为未找到以下依赖项:Glog/Gflags - 都检测到
- angularjs - 使用 Angularjs/Spring 上传/下载 uint8array
- multithreading - 本机内存分配 (malloc) 未能分配字节
- mysql - 我如何从多行获取单个数据(SMS 问题)
- python - 逻辑回归:fit() 缺少 1 个必需的位置参数:'y'
- linear-programming - 如何用单纯形法动态定义约束?
- css - 如何在 2 列中动态构建内容