Php 使用数组合并到foreach循环中
如果他们的配置文件中有替代信息,我需要将替代信息的新数组合并到循环中 这是我的循环:Php 使用数组合并到foreach循环中,php,foreach,array-merge,Php,Foreach,Array Merge,如果他们的配置文件中有替代信息,我需要将替代信息的新数组合并到循环中 这是我的循环: foreach ($doctor->getVars() as $k => $v) { $data['doctor_'. $k] = $v; } foreach ($patient->get_data() as $k=>$v) { if (is_string($v) || is_numeric($v)) $data["patient
foreach ($doctor->getVars() as $k => $v)
{
$data['doctor_'. $k] = $v;
}
foreach ($patient->get_data() as $k=>$v)
{
if (is_string($v) || is_numeric($v))
$data["patient_" . $k] = strtoupper($v);
}
下面是$data var_转储:
Array
(
[employee] => person
[date] => 05/08/2013
[datetime] => 05/08/2013 9:41:15 AM
[department] => stuff
[employee_ext] => 7457
[employee_email] =>
[barcode] => *NZS01*
[doctor_df_code] => 09HQ
[doctor_npi] => 1111111111
[doctor_dea] => B4574
[doctor_upin] =>
[doctor_license] =>
[doctor_phone] => (111)111-1111
[doctor_fax] => (000)000-0000
[doctor_fname] => UNDEFINED
[doctor_lname] => UNDEFINED
[doctor_title] =>
[doctor_intake_rx_caller_id] =>
[doctor_costco_rx_caller_id] =>
[doctor_reorder_rx_caller_id] =>
[doctor_address1] => 24 CABELL st
[doctor_address2] => SUITE 10
[doctor_city] => places
[doctor_state] => CA
[doctor_zip] => 91111
[doctor_active_events] =>
[doctor_dont_call] => 0
[doctor_dont_fax] => 1
)
我需要将下面的数组合并到上面的数组中。
下面是函数addr($dfcode)的打印变量:
我是数组合并新手,我假设在$data['doctor.'$k]=$v
之后,我可以列出新函数以及我特别想要合并的字段
语法是我不确定的:
$data['doctor_'. $k] . array_merge(addr($dfcode))['doctor_address1'] = $v;
非常感谢您的帮助。合并两个数组的一般公式如下(将$array\m合并为$array\o):
$array\u o
现在将包含$array\u m
编辑:我刚刚在你的帖子中注意到,你似乎想使用array\u merge函数。您还可以执行以下操作:
$array_o = array_merge($array_o, array_m);
foreach($array\u bot as$key=>$value){$array\u top[$key]=$value;}我认为这将合并这两个数组。我没有测试代码。但从一开始就需要两个数组。不知道这是否是你的真实问题当你说你想合并这些信息时,如果他们有其他信息,你的意思是你只想合并第二个数组中的数据,如果第二个数组包含这些信息?我不完全清楚你的情况。此外,除一个字段外,第二个数组中的所有字段都与第一个数组中的字段重复。是否替换原始阵列中的数据?这与合并不同。是的,仅当第二个数组包含信息时才合并第二个数组中的数据。正在替换原始数组中的数据。是否假设键将存在,但它们可能不包含任何值?或者您还需要检查键是否存在?它们将始终存在,并且可能不总是有值。是的,我认为使用数组合并函数可以完成任务。我不知道如何将$array_o和array_m转换到我的循环中;
foreach($array_m as $key=>$value){
$array_o[$key] = $value;
}
$array_o = array_merge($array_o, array_m);