Php 如何将数组中的一些字符串连接到另一个多数组?(菲律宾,拉雷维尔)
我有两个不同的数组。第一个数组($ecode)是一个多数组。$ecode的输出如下所示:Php 如何将数组中的一些字符串连接到另一个多数组?(菲律宾,拉雷维尔),php,arrays,laravel,Php,Arrays,Laravel,我有两个不同的数组。第一个数组($ecode)是一个多数组。$ecode的输出如下所示: Array ( [0] => Array ( [ecode] => 200 [number] => 540 ) [2] => Array ( [ecode] => 404 [number] => 44
Array
(
[0] => Array
(
[ecode] => 200
[number] => 540
)
[2] => Array
(
[ecode] => 404
[number] => 44
)
[3] => Array
(
[ecode] => 403
[number] => 9
)
)
Array
(
[0] => Array
(
[ecode] => 204
[number] => 540
[text] => Request executed
)
[2] => Array
(
[ecode] => 404
[number] => 44
[text] => Document not Found
)
$ecode_text = [404 => 'Document Not Found', 403 => 'Server busy', 401 => 'Forbidden', '........' ];
(404、200……等代码在其中,数量([number])以及它们在我的日志文件中的存在量)
在我的第二个例子中,普通数组只是一些字符串:
$ecode_text[] = ['Document Not Found', 'Server busy', 'Forbidden', 'Request executed', '........' ];
我的问题是,我需要把字符串放到他的正确错误代码中
像404没有找到
最后,我的多重数组应该如下所示:
Array
(
[0] => Array
(
[ecode] => 200
[number] => 540
)
[2] => Array
(
[ecode] => 404
[number] => 44
)
[3] => Array
(
[ecode] => 403
[number] => 9
)
)
Array
(
[0] => Array
(
[ecode] => 204
[number] => 540
[text] => Request executed
)
[2] => Array
(
[ecode] => 404
[number] => 44
[text] => Document not Found
)
$ecode_text = [404 => 'Document Not Found', 403 => 'Server busy', 401 => 'Forbidden', '........' ];
有人能帮我吗?我从未连接过两个不同的阵列,也不知道从哪里开始。在我的谷歌搜索中,我没有找到与我的问题相关的东西
我使用的是Laravel框架,普通的php就足够了,但如果有人知道Laravel中的解决方案,这就太好了
谢谢你的帮助
我所尝试的:
$error_val = array_count_values($ecode_array);
foreach($error_val as $key => $val){
$errors[] = [
'number' => $val,
];
}
$ecode_text[] =
[
404 => 'Document Not Found',
503 => 'Server busy',
403 => 'Forbidden',
204 => 'Request executed',
307 => 'Moved => temporarily',
303 => 'Moved temporarily (redirect)',
206 => 'Partial Content',
301 => 'Moved permanently (redirect)',
500 => 'Internal server Error'
];
foreach($ecode_text as $ecode => $test){
if ($ecode == in_array($ecode, $errors)){
$end_ecode[] = [
'ecode' => $ecode,
'test' => $test,
'number' => $errors['number']
];
}
}
但是这对我不起作用 您需要使规范化文本引用错误代码,因此,请按如下方式构建数组:
Array
(
[0] => Array
(
[ecode] => 200
[number] => 540
)
[2] => Array
(
[ecode] => 404
[number] => 44
)
[3] => Array
(
[ecode] => 403
[number] => 9
)
)
Array
(
[0] => Array
(
[ecode] => 204
[number] => 540
[text] => Request executed
)
[2] => Array
(
[ecode] => 404
[number] => 44
[text] => Document not Found
)
$ecode_text = [404 => 'Document Not Found', 403 => 'Server busy', 401 => 'Forbidden', '........' ];
只需foreach
it
foreach ($ecode as &$e):
$e['text'] = $ecode_text[$e['ecode']];
endforeach;
到目前为止你都试过了。发布你的尝试。正如您可以在此处简单地使用
foreach
一样,我尝试了使用array\u merge的方法,但删除了我尝试过的方法。。我没有什么可以给你看的,但我真的试图找到一个解决办法。我更像是一个PHP“初学者”。这就是为什么我在这个问题上有点结巴的原因。你必须知道B中的字符串数组是如何连接到a的。B中根本没有错误代码或引用的方式,也没有比较器来帮助确定如何正确合并这两个数组。但是我该如何说我的foreach“未找到文档”属于404,或者“已执行请求”属于204吗?我认为这是我最大的问题,你需要你的编码文本是一个对象数组,所以当你的代码没有真正的逻辑和不工作时,你将有一个键(404)来使用-你需要什么比我的答案更多?