相关疑难解决方法(0)

PHP数组键重新排序

我的数组看起来像这样:

array(
  0 => 'val',
  2 => 'val',
  3 => 'val',
  5 => 'val',
  7 => 'val'
);
Run Code Online (Sandbox Code Playgroud)

如何重新排序按键以便它会像0, 1, 2, 3, 4

php arrays

55
推荐指数
3
解决办法
8万
查看次数

array_unique然后重新编号键

可能重复:
重新索引数字数组键

我有一个数组如下

Array
(
    [0] => 15/11/2012 - 18/11/2012
    [1] => 15/11/2012 - 18/11/2012
    [2] => 15/11/2012 - 18/11/2012
    [3] => 15/11/2012 - 18/11/2012
    [4] => 19/12/2012 - 24/12/2012
    [5] => 24/12/2012 - 01/01/2013
    [6] => 24/12/2012 - 01/01/2013
    [7] => 16/01/2013 - 01/02/2013
)
Run Code Online (Sandbox Code Playgroud)

我正在使用array_unique来删除给我的重复项

    Array
(
    [0] => 15/11/2012 - 18/11/2012
    [4] => 19/12/2012 - 24/12/2012
    [5] => 24/12/2012 - 01/01/2013
    [7] => 16/01/2013 - 01/02/2013
)
Run Code Online (Sandbox Code Playgroud)

如何更改密钥以使其连续 - 如下所示

    Array
(
    [0] => 15/11/2012 - 18/11/2012 …
Run Code Online (Sandbox Code Playgroud)

php array-unique

55
推荐指数
1
解决办法
3万
查看次数

如何在PHP中重新索引数组的值?

Array (
    [id] => 3
    [user_id] => 1
    [clan_id] => 1
    [date] => 2009-09-24 09:02:05
    [skill1rank] => 1
    [skill1lvl] => 2376
    [skill1xp] => 1804229942
    [skill2rank] => 53
    [skill2lvl] => 99
    [skill2xp] => 120510105
    [skill3rank] => 5526
    [skill3lvl] => 99
    [skill3xp] => 21581237
    [skill4rank] => 622
    ...
    [skill21xp] => 38458116
    [skill22rank] => 184
    [skill22lvl] => 99
    [skill22xp] => 22217059
    [skill23rank] => 5267
    [skill23lvl] => 99
    [skill23xp] => 13396733
    [skill24rank] => 101
    [skill24lvl] => 99
    [skill24xp] => 15724235
    [skill25rank] => 903
    [skill25lvl] …
Run Code Online (Sandbox Code Playgroud)

php arrays key

1
推荐指数
1
解决办法
176
查看次数

如何在没有数组key => value的键的情况下得到一个简单的数组?

我有一个这样的数组: array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43"); 并且只想得到我的值,例如:

simpleTab =array("35","37","43");

或者像这样,我应该更好地获得一个清单:

simpleList=["35";"37";"43"]
Run Code Online (Sandbox Code Playgroud)

我正在创建一个函数,因为我需要它几次,所以这里是:

$simpleArray=array(); //don't know if this should be array, i'd like to have a list

foreach($valueAssoc as $key => $value{//array_push($simpleArray,$value);//NO it returns an array with keys 0 , 1 , etc
    //$simpleArray[]=$value; //same ! I don't want any keys

    //I want only an array without any index or key "tableau indexé sans clef"
    echo $value;
    //would like to have some method like this :
    $simpleArray.add($value);//to add value in my list …
Run Code Online (Sandbox Code Playgroud)

php arrays key list

1
推荐指数
3
解决办法
5132
查看次数

在php中重新排列数组

我有一个问题,像0个索引的数组,我删除了第0个索引,现在它就像1到10,当我显示这个数组时,在第0个位置有一个空列.我想重新安排这个数组为0到9.目的是数组构造我的网格,第0个位置用于编辑,如果用户没有权限,那么我取消设置第0个元素.如何将我的数组重新排列为0到9

样本数组结构就像

[fields] => Array
    (
        [1] => Array
            (
                [header] => Array
                    (
                        [fieldName] => OFFERID
                        [displayName] => History
                        [width] => 70
                    )

                [visibility] => Array
                    (
                        [showOnStart] => 1
                        [editable] => 
                    )

                [cell] => Array
                    (
                        [type] => raw
                        [params] => Array
                            (
                                [text] => <a href="javascript:void(0);" id="{{OFFERID}}" class="btnHistory">History</a>
                            )

                    )

                [sort] => Array
                    (
                        [sortable] => 1
                    )

                [validator] => Array
                    (
                        [name] => 
                        [params] => 
                    )

            )

        [2] => Array
            (
                [header] => Array
                    (
                        [fieldName] …
Run Code Online (Sandbox Code Playgroud)

php arrays

0
推荐指数
1
解决办法
452
查看次数

Splatpacking 与 array_values() 使用数字键重新索引数组

从 PHP7.4 开始,有一种新的技术可以使用数字键重新索引数组。

我会称它为“数组重新打包”或者一些有趣的东西,比如“ splatpacking ”。简单的过程包括使用 splat 运算符 ( ...) —— 又名“扩展运算符”——来解包一个数组,然后通过“对称数组解构”用第一级元素填充一个新数组。

比较代码:(演示

$array = [2 => 4, 5 => 3, "3" => null, -10.9 => 'foo'];

var_export(array_values($array));
var_export([...$array]);
Run Code Online (Sandbox Code Playgroud)

两者都会输出:

array (
  0 => 4,
  1 => 3,
  2 => NULL,
  3 => 'foo',
)
Run Code Online (Sandbox Code Playgroud)

同样,splatpacking 技术严格限于带有数字键的数组,因为 splat 运算符会阻塞其他任何东西,并且只有 PHP7.4 及更高版本才能将解压缩的值直接写入数组。

由于这两种技术在排位赛中提供相同的输出,我什么时候应该使用一种而不是另一种?

请注意,这不是关于如何重新索引键,而是array_values()与新可用技术的比较。

这不同于:

php arrays argument-unpacking reindex php-7.4

-6
推荐指数
1
解决办法
438
查看次数

标签 统计

php ×6

arrays ×5

key ×2

argument-unpacking ×1

array-unique ×1

list ×1

php-7.4 ×1

reindex ×1