php怎么把字符串转为二维数组
-
在PHP中,可以使用explode函数将一个字符串按照指定的分隔符切割成数组。然后,通过遍历切割后的数组,再次使用explode函数将每个元素按照另一个指定的分隔符切割成二维数组。
下面是一个示例代码:
“`php
// 原始字符串
$string = “1,2,3;4,5,6;7,8,9″;// 按照分隔符”;”切割字符串,获取一维数组
$arr1 = explode(“;”, $string);// 定义一个二维数组
$arr2 = array();// 遍历一维数组
foreach ($arr1 as $item) {
// 按照分隔符”,”切割每个元素,获取二维数组
$arr2[] = explode(“,”, $item);
}// 输出二维数组
print_r($arr2);
“`上述代码会输出以下结果:
“`
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
)[1] => Array
(
[0] => 4
[1] => 5
[2] => 6
)[2] => Array
(
[0] => 7
[1] => 8
[2] => 9
))
“`这样就将一个字符串转换为二维数组了。通过这种方法,可以根据具体的分隔符和字符串结构,将字符串转换为多维数组。
2年前 -
在PHP中,要将字符串转换为二维数组,可以使用explode()和array_push()函数来实现。下面是实现的步骤:
1. 使用explode()函数将字符串分割成单个元素的数组。explode()函数根据指定的分隔符将字符串分割成数组。例如,如果分隔符是逗号,那么字符串”1,2,3,4,5″将被分割成数组[“1″,”2″,”3″,”4″,”5”]。
“`php
$str = “1,2,3,4,5”;
$arr = explode(“,”, $str);
“`2. 创建一个新的二维数组,并将每个单个元素的数组添加到其中。可以使用array_push()函数将元素添加到数组的末尾。
“`php
$newArr = array();foreach ($arr as $item) {
$newArr[] = array($item);
}
“`3. 如果需要在二维数组中添加更多的元素,可以使用array_push()函数将元素添加到每个子数组。
“`php
$newItem = 6;foreach ($newArr as $key => $subArr) {
array_push($newArr[$key], $newItem);
}
“`4. 如果字符串中的元素带有键名,可以使用explode()函数将带有键名的字符串分割成关联数组。然后按照步骤2和3的方法将关联数组元素添加到二维数组中。
“`php
$str = “name1:John,name2:Jane,name3:Tom”;// 分割字符串为关联数组
$arr = explode(“,”, $str);
$newArr = array();foreach ($arr as $item) {
// 将关联数组元素分割为键名和值
$temp = explode(“:”, $item);
$key = $temp[0];
$value = $temp[1];// 将元素添加到二维数组
$newArr[] = array($key => $value);
}
“`5. 最后,可以使用print_r()函数打印输出转换后的二维数组,以查看结果。
“`php
print_r($newArr);
“`以上是将字符串转换为二维数组的基本方法。根据实际需求,可以根据具体情况进行调整和扩展。
2年前 -
要将字符串转换为二维数组,需要首先确定字符串的格式和分隔符。假设字符串的格式为key1:value1,key2:value2,key3:value3,并以逗号作为分隔符。
下面是将字符串转换为二维数组的步骤和操作流程:
1. 首先定义一个空的二维数组$result,用于存储转换后的结果。
2. 使用explode()函数将字符串按照逗号分割为一个一维数组。代码如下:
“`php
$array1 = explode(‘,’, $str);
“`
3. 使用foreach循环遍历$array1数组,对每个元素按照冒号分割为一个一维数组。代码如下:
“`php
foreach($array1 as $value) {
$array2 = explode(‘:’, $value);
// 将$array2添加到$result数组中
$result[] = $array2;
}
“`
4. 最后,通过打印$result数组,可以查看转换后的二维数组。代码如下:
“`php
print_r($result);
“`完整的代码如下:
“`php
$str = “key1:value1,key2:value2,key3:value3”;
$result = array();
$array1 = explode(‘,’, $str);
foreach($array1 as $value) {
$array2 = explode(‘:’, $value);
$result[] = $array2;
}
print_r($result);
“`执行以上代码,将输出以下结果:
“`
Array
(
[0] => Array
(
[0] => key1
[1] => value1
)[1] => Array
(
[0] => key2
[1] => value2
)[2] => Array
(
[0] => key3
[1] => value3
)
)
“`可以看到,字符串已经成功转换为包含了键值对的二维数组。
2年前