【问题标题】:convert the array to the correct form将数组转换为正确的形式
【发布时间】:2021-12-29 22:27:52
【问题描述】:

转换文件后

$rows = array_map('trim', file($lines1));
foreach ($rows as $key => $value) {
  $params = array_map('trim', explode(';', $value));
}

得到如下类型的数组,包含在一个变量中:

Array ( [0] => 0 [1] => 1 [2] => 2 [3] => i need this [4] => 4 [5] => 5 [6] => 6 [7] => 7 [8] => 8 [9] => 9 [10] => 10 [11] => 11 [12] => 12 [13] => 13 [14] => 14 )
Array ( [0] => 0 [1] => 1 [2] => 2 [3] => i need this [4] => 4 [5] => 5 [6] => 6 [7] => 7 [8] => 8 [9] => 9 [10] => 10 [11] => 11 [12] => 12 [13] => 13 [14] => 14 )
etc...

如何组合这些数组并将 key = 3 的值放入单独的变量中。 查看:

Array ( [0] => i need this [1] => i need this and etc...

【问题讨论】:

  • “获得了以下类型的数组” - 不是一个数组 - 多个数组。您在每次迭代中覆盖 $params。与其这样做,不如向其中 添加 新元素(这样您实际上会得到一个二维数组),然后只需使用 array_column
  • 顺便说一句,这看起来像是在尝试读取 CSV 数据 - 这是您首先应该使用 fgetcsv 的东西。

标签: php arrays csv


【解决方案1】:
$range = range(1, 100);
$result = array_combine($range, $range);

查看array_combine

【讨论】:

  • 但我不知道“range”的确切范围,bcz“count”不计算变量中数组的总数,而是一个数组中的元素总数。总是有 15 个
  • 这只是一个例子!!获取样本范围数组:- 像 [1,2,3...100],索引从零开始。 array_combine($range, $range) - 它将组合 2 个数组的值并使其成为一个。像 [0=>3] , [ 0=>4] = [3=>4]
  • 我相信你有一个从零开始的数组索引,但是你想让它的键和值一样!!你提到过-我需要这个
  • 非常感谢,我受苦了,走了一点不同的路。但是“array_combine”有帮助
  • 欢迎!这样的内置功能还有很多,只需要探索一下。 :) 干杯
猜你喜欢
  • 1970-01-01
  • 2012-10-13
  • 1970-01-01
  • 2021-05-09
  • 2021-04-15
  • 2022-08-03
  • 1970-01-01
  • 1970-01-01
  • 2014-03-04
相关资源
最近更新 更多