我的数组中的一些元素是基于用户提交的内容的空字符串.我需要删除这些元素.我有这个:
foreach($linksArray as $link)
{
if($link == '')
{
unset($link);
}
}
print_r($linksArray);
Run Code Online (Sandbox Code Playgroud)
但它不起作用,$linksArray仍然有空元素.我也尝试过使用该empty()功能,但结果是一样的.
我有以下数组,我想重新索引,所以键是相反的(理想情况下从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) 我的数组看起来像这样:
array(
0 => 'val',
2 => 'val',
3 => 'val',
5 => 'val',
7 => 'val'
);
Run Code Online (Sandbox Code Playgroud)
如何重新排序按键以便它会像0, 1, 2, 3, 4?
我有一个这样的数组:
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) 从 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()与新可用技术的比较。
这不同于: