PHP将类似first_name的数组格式更改为first name
假设我有如下的数组PHP将类似first_name的数组格式更改为first name,php,arrays,Php,Arrays,假设我有如下的数组 Array ( [0] => agent_name [1] => first_name [2] => my_last_name [3] => job [4] => job_description ) 现在我想把这个数组转换成下面的格式 Array ( 'agent_name' => 'Agent Name', 'first_name' => 'First Name',
Array
(
[0] => agent_name
[1] => first_name
[2] => my_last_name
[3] => job
[4] => job_description
)
现在我想把这个数组转换成下面的格式
Array
(
'agent_name' => 'Agent Name',
'first_name' => 'First Name',
'my_last_name' => 'My Last Name',
'job' => 'Job',
'job_description' => 'Job Description',
)
那么有谁能帮我,怎么设置成这样
谢谢首先,您需要用空格替换字符
。
,然后使用函数将单词的首字母大写
<?php
$arr = array('agent_name', 'first_name', 'last_name', 'job', 'job_description');
$new_arr = array();
foreach($arr as $val){
$new_arr[$val] = ucwords(str_replace("_", " ", $val));
}
print_r($new_arr);
?>
我使用和的组合来实现这一点
$a = array_combine($a,array_map(function($val) {
return implode(' ',array_map('ucfirst',explode('_', $val)));
}, $a));
print_r($a);
这里正在工作。我使用了阵列联合收割机
$Main_Array = array('agent_name','first_name','my_last_name','job','job_description');
$New_array = array();
foreach ($Main_Array as $key => $value) {
$New_array[] = ucwords(str_replace('_',' ',$value));
}
$get_result = array_combine($Main_Array,$New_array);
echo '<pre>';
print_r($get_result);
$Main\u Array=Array('agent\u name','first\u name','my\u last\u name','job','job\u description');
$New_array=array();
foreach($key=>$value的主数组){
$New_array[]=ucwords(str_replace(“”,“”,“”,$value));
}
$get\u result=array\u combine($Main\u array,$New\u array);
回声';
打印(获取结果);
为什么不在同一阵列上使用一个简单的foreach
请向我们展示您的尝试。即使你还在学习,那也应该比什么都不重要。cf。特别是12、13、16和17。为了澄清,您是否只想更改数组的存储值(即,最后有['Agent Name','First Name',…])。还是要将索引数组转换为数组的键值存储类型?
<?php
$data = array
(
0 => 'agent_name',
1 => 'first_name',
2 => 'my_last_name',
3 => 'job',
4 => 'job_description'
);
foreach ( $data AS $k => $v )
{
$data[$v] = ucwords ( str_replace ( '_', ' ', $v ) );
unset ( $data[$k] );
}
print_r ( $data );
?>