PHP 将值连接到数组中
PHP concatenate values into array
我是 php 的新手,想知道如何实现以下目标...
下面我有几个从数据库行填充的数组。我想要一个新数组 mappingId
,它连接几行以形成 mappingId
数组的值。下面我使用了 array_combine 但这似乎不起作用。谁能建议使用什么?
$appId = array();
$appDate = array();
$appTime = array();
$appDoctorId = array();
$mappingId = array(); // combined values
for ($i = 0; $i < mysqli_num_rows($resultAppointmentsBooked); $i++)
{
$row = mysqli_fetch_row($resultAppointmentsBooked);
$appId = $row[0];
$ids[] = $row[0];
$appTime[] = $row[3];
$appDate[] = $row[4];
$appDoctorId[] = $row[2];
$mappingId = array_combine($row[4], $row[3], $row[2]);
//Test output
echo "MappingId: $row[4]$row[3]$row[2] <br />";
echo "MappingId2: - $mappingId[$i] <br />";
}
我也用过'array_merge'下面的方法...
$ids[] = $row[0];
$appTime[] = $row[3];
$appDate[] = $row[4];
$appDoctorId[] = $row[2];
$mappingId = array_merge($appDate, $appTime, $appDoctorId);
但是当我打印值时...
echo "MappingId2: $mappingId[$i] <br />";
只输出第一个数组的值
我想你要找的是 array_merge
array_merge(array(1), array(2,3)); //return array(1,2,3)
您可以通过这样做向数组添加值:
$mappingId[] = 'Hello';
$mappingId[] = 'There';
$mappingId[] = 'Friend';
结果:
$mappingId = array('Hello', 'There', 'Friend');
--
您也可以使用array_merge
。
这会将一个或多个数组的元素合并在一起,以便将一个数组的值附加到前一个数组的末尾。它 returns 结果数组。
试试这样的方法,array_merge 应该有效:
$ids = $row[0];
$appTime = $row[3];
$appDate = $row[4];
$appDoctorId = $row[2];
$mappingId = array_merge($ids, $appTime, $appDate, $appDoctorId);
echo "MappingId: $row[4]$row[3]$row[2] <br />";
echo "MappingId2: - $mappingId <br />";
尝试这样的事情。如果这是你需要的。在下面的代码中
$mappingId
包含数组格式的单个 appDate
、appTime
、appDoctorId
的数组。如果您不想要数组,只想将这些值与一个元素连接起来,那么您也可以这样做。请告诉我!
$mappingId = array(); // combined values
for ($i = 0; $i < mysqli_num_rows($resultAppointmentsBooked); $i++)
{
$row = mysqli_fetch_row($resultAppointmentsBooked);
$appId = $row[0];
$appTime = $row[3];
$appDate = $row[4];
$appDoctorId = $row[2];
$myArr = array();
//array_push($myArr, $appDate, $appTime, $appDoctorId);
// If you want in concatenate format
array_push($myArr, $appDate."".$appTime."".$appDoctorId);
array_push($mappingId, $myArr);
}
我是 php 的新手,想知道如何实现以下目标...
下面我有几个从数据库行填充的数组。我想要一个新数组 mappingId
,它连接几行以形成 mappingId
数组的值。下面我使用了 array_combine 但这似乎不起作用。谁能建议使用什么?
$appId = array();
$appDate = array();
$appTime = array();
$appDoctorId = array();
$mappingId = array(); // combined values
for ($i = 0; $i < mysqli_num_rows($resultAppointmentsBooked); $i++)
{
$row = mysqli_fetch_row($resultAppointmentsBooked);
$appId = $row[0];
$ids[] = $row[0];
$appTime[] = $row[3];
$appDate[] = $row[4];
$appDoctorId[] = $row[2];
$mappingId = array_combine($row[4], $row[3], $row[2]);
//Test output
echo "MappingId: $row[4]$row[3]$row[2] <br />";
echo "MappingId2: - $mappingId[$i] <br />";
}
我也用过'array_merge'下面的方法...
$ids[] = $row[0];
$appTime[] = $row[3];
$appDate[] = $row[4];
$appDoctorId[] = $row[2];
$mappingId = array_merge($appDate, $appTime, $appDoctorId);
但是当我打印值时...
echo "MappingId2: $mappingId[$i] <br />";
只输出第一个数组的值
我想你要找的是 array_merge
array_merge(array(1), array(2,3)); //return array(1,2,3)
您可以通过这样做向数组添加值:
$mappingId[] = 'Hello';
$mappingId[] = 'There';
$mappingId[] = 'Friend';
结果:
$mappingId = array('Hello', 'There', 'Friend');
--
您也可以使用array_merge
。
这会将一个或多个数组的元素合并在一起,以便将一个数组的值附加到前一个数组的末尾。它 returns 结果数组。
试试这样的方法,array_merge 应该有效:
$ids = $row[0];
$appTime = $row[3];
$appDate = $row[4];
$appDoctorId = $row[2];
$mappingId = array_merge($ids, $appTime, $appDate, $appDoctorId);
echo "MappingId: $row[4]$row[3]$row[2] <br />";
echo "MappingId2: - $mappingId <br />";
尝试这样的事情。如果这是你需要的。在下面的代码中
$mappingId
包含数组格式的单个 appDate
、appTime
、appDoctorId
的数组。如果您不想要数组,只想将这些值与一个元素连接起来,那么您也可以这样做。请告诉我!
$mappingId = array(); // combined values
for ($i = 0; $i < mysqli_num_rows($resultAppointmentsBooked); $i++)
{
$row = mysqli_fetch_row($resultAppointmentsBooked);
$appId = $row[0];
$appTime = $row[3];
$appDate = $row[4];
$appDoctorId = $row[2];
$myArr = array();
//array_push($myArr, $appDate, $appTime, $appDoctorId);
// If you want in concatenate format
array_push($myArr, $appDate."".$appTime."".$appDoctorId);
array_push($mappingId, $myArr);
}