PHP array values



我有一个数组:

Array
 (
  [0] => hello;string1
  [1] => bye;string2
)

我想获取数组,以便我有字符串的值(在;)之后成为数组键的值,因此它变为多维

$arr = array
 (
  "hello;string1",
  "bye;string2"
);
$newArr = [];
foreach ($arr as $a) {
 $e = explode(";", $a);
    $newArr[$e[1]] = $e[0];
}
print_r($newArr);

你可以使用爆炸来做到这一点

在您的情况下,爆炸会分解分隔符上的变量;它将分解值放在数组中

<?php
$arr = ['test;hi', 'another;one'];
$newarr = [];
foreach ($arr as $key => $value) {
    $value = explode(';', $value);
    $newarr[$value[0]] = $value[1];
}
var_dump($newarr);

var_dump的输出:

array(2) { ["test"]=> string(2) "hi" ["another"]=> string(3) "one" }
$array=Array
 (
  0 => "hello;string1",
  1 => "bye;string2"
);
$result=array();
foreach($array as $data)
{
    list($value,$key)=explode(";", $data);
    $result[$key]=$value;
}
print_r($result);

感谢您的所有帮助,这实际上是我想要的,抱歉含糊不清

foreach ($arr as $a) {
$e = explode(";", $a);
$newarr[] = array('hello' => $e[0], 'bye' => $e[1]);
}

你应该使用这样的东西!!

$cars = array
(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
for ($row = 0; $row < 4; $row++) {
echo "<p><b>Row number $row</b></p>";
echo "<ul>";
for ($col = 0; $col < 3; $col++) {
echo "<li>".$cars[$row][$col]."</li>";
 }
  echo "</ul>";
 }

外出

Row number 0
Volvo
22
18
Row number 1
BMW
15
13
Row number 2

Saab
5
2
Row number 3
Land Rover
17
15

我修复了上面的新代码的答案,您也可以在此处找到它 https://www.w3schools.com/php/php_arrays_multi.asp

最新更新