Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将数组中的一些字符串连接到另一个多数组?(菲律宾,拉雷维尔)_Php_Arrays_Laravel - Fatal编程技术网

Php 如何将数组中的一些字符串连接到另一个多数组?(菲律宾,拉雷维尔)

Php 如何将数组中的一些字符串连接到另一个多数组?(菲律宾,拉雷维尔),php,arrays,laravel,Php,Arrays,Laravel,我有两个不同的数组。第一个数组($ecode)是一个多数组。$ecode的输出如下所示: Array ( [0] => Array ( [ecode] => 200 [number] => 540 ) [2] => Array ( [ecode] => 404 [number] => 44

我有两个不同的数组。第一个数组($ecode)是一个多数组。$ecode的输出如下所示:

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)来使用-你需要什么比我的答案更多?