相关疑难解决方法(0)

删除空数组元素

我的数组中的一些元素是基于用户提交的内容的空字符串.我需要删除这些元素.我有这个:

foreach($linksArray as $link)
{
    if($link == '')
    {
        unset($link);
    }
}
print_r($linksArray);
Run Code Online (Sandbox Code Playgroud)

但它不起作用,$linksArray仍然有空元素.我也尝试过使用该empty()功能,但结果是一样的.

php arrays string

744
推荐指数
21
解决办法
85万
查看次数

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

我有以下数组,我想重新索引,所以键是相反的(理想情况下从1开始):

当前数组(编辑:数组实际上看起来像这样):

Array (

[2] => Object
    (
        [title] => Section
        [linked] => 1
    )

[1] => Object
    (
        [title] => Sub-Section
        [linked] => 1
    )

[0] => Object
    (
        [title] => Sub-Sub-Section
        [linked] => 
    )

)
Run Code Online (Sandbox Code Playgroud)

怎么样:

Array (

[1] => Object
    (
        [title] => Section
        [linked] => 1
    )

[2] => Object
    (
        [title] => Sub-Section
        [linked] => 1
    )

[3] => Object
    (
        [title] => Sub-Sub-Section
        [linked] => 
    )

)
Run Code Online (Sandbox Code Playgroud)

php arrays indexing

139
推荐指数
10
解决办法
18万
查看次数

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万
查看次数

如何在没有数组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
查看次数

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
查看次数

标签 统计

arrays ×5

php ×5

argument-unpacking ×1

indexing ×1

key ×1

list ×1

php-7.4 ×1

reindex ×1

string ×1