PHP的唯一/组关联数组 - php

我想删除以下数组的重复项。我想按第一个值分组,然后重建索引。

Array
(
    [0] => Array
        (
            [title] => California
            [state_id] => 1
        )

    [1] => Array
        (
            [title] => California
            [state_id] => 1
        )

    [2] => Array
        (
            [title] => New Mexico
            [state_id] => 2
        )

    [3] => Array
        (
            [title] => Washington
            [state_id] => 3
        )

    [4] => Array
        (
            [title] => Montana
            [state_id] => 4
        )

    [5] => Array
        (
            [title] => Montana
            [state_id] => 4
        )
)

Array
(
    [0] => Array
        (
            [title] => California
            [state_id] => 1
        )

[2] => Array
    (
        [title] => New Mexico
        [state_id] => 2
    )

[3] => Array
    (
        [title] => Washington
        [state_id] => 3
    )

[4] => Array
    (
        [title] => Montana
        [state_id] => 4
    )

)

并重建密钥

Array
(
    [0] => Array
        (
            [title] => California
            [state_id] => 1
        )

    [1] => Array
        (
            [title] => New Mexico
            [state_id] => 2
        )

    [2] => Array
        (
            [title] => Washington
            [state_id] => 3
        )

    [3] => Array
        (
            [title] => Montana
            [state_id] => 4
        )

)

参考方案

$array = array_values(array_combine(array_map(function ($i) { return $i['title']; }, $array), $array));

提取title键(array_map
使用提取的标题作为新阵列的键,并将其与旧阵列(array_combine)结合使用,这将对阵列进行重复数据消除(键必须是唯一的)
通过array_values运行结果,这将丢弃密钥

细分:

$keys    = array_map(function ($i) { return $i['title']; }, $array);
$deduped = array_combine($keys, $array);
$result  = array_values($deduped);

对于PHP 5.2-,您需要编写匿名回调函数,如下所示:

array_map(create_function('$i', 'return $i["title"];'), $array)

php:将分钟取整到最近的四分之一小时,然后执行更多操作 - php

最初的问题是这样的:取分钟数->转换为四分之一小时-> 1个四分之一小时为1个单位->输出单位我今天整天都在整理页面,几分钟前我的大脑就停止工作了,我只是不知道如何输出单位数量。我知道在此网站上发布问题会有所帮助。因此,用户输入的分钟数(不是小时和分钟,而是数分钟),站点需要输出单位数量。单位是一个刻钟。分钟总是四舍五入到最近的四分之一小时…

php Singleton类实例将在多个会话中保留吗? - php

举一个简单的例子,如果我想计算一个不使用磁盘存储的脚本的命中次数,我可以使用静态类成员来执行此操作吗?用户1:<?php $test = Example::singleton(); $test->visits++; ?> 用户2:<?php $test = Example::singleton(); $test->visits+…

PHP OOP概念付诸实践 - php

目前,我所拥有的是一份以程序庄园形式编写的审查表。我想更改一些内容,并希望在此过程中,根据过去的经验,在OOP中,网站的整个审核部分会更好。数据流如下:HTML表单=>提交=> jQuery验证=>? => PHP验证=>添加记录我的问题是要了解将POST数据传递给类的正确方法是使用AJAX / jQuery或使用具有标准感谢页…

PHP-将2个数组的值连接到1个新数组中 - php

我有2个具有相同结构的独立多维数组。例:Array ( [0] => Array ( [uploadData] => 1234 Main St ) [1] => Array ( [uploadData] => 5678 Elm St ) [2] => Array ( [uploadData] => 9879 New St …

PHP:填写数组中的“空白” - php

我有一个php数组(通过表单中的复选框值获取-您知道复选框仅在未设置时显示在_POST变量中)。Array ( [2] => 0,2 [3] => 0,3 ) 我需要一种方法来“填补” 0-5之间的差距。所以上面看起来像(用'-1'填充空白。我尝试用填充有'-1'的数组array_merge(),但这没用。Array ( [0] => -1…