PHP 将字符串转换为数组的函数168


PHP 提供了多种内置函数,可以将字符串轻松地转换为数组。根据字符串的结构和所需结果,以下是最常用的函数:

1. explode()

用途:将字符串按分隔符拆分为数组。

语法:
```php
explode(string $separator, string $string): array
```

示例:
```php
$str = "foo,bar,baz";
$arr = explode(",", $str);
// 结果:$arr = ["foo", "bar", "baz"]
```

2. str_getcsv()

用途:将 CSV(逗号分隔值)字符串解析为数组。

语法:
```php
str_getcsv(string $csv, string $delimiter = ",", string $enclosure = '"', string $escape = "\): array
```

示例:
```php
$csv = "foo,bar,baz1,2,3";
$arr = str_getcsv($csv);
// 结果:$arr = ["foo", "bar", "baz"], ["1", "2", "3"]
```

3. preg_split()

用途:使用正则表达式将字符串拆分为数组。

语法:
```php
preg_split(string $pattern, string $subject): array
```

示例:
```php
$str = "foo_bar_baz";
$arr = preg_split('/_/', $str);
// 结果:$arr = ["foo", "bar", "baz"]
```

4. parse_str()

用途:将 URL 查询字符串或类似格式的字符串解析为键值对数组。

语法:
```php
parse_str(string $encoded_string, array &$result): void
```

示例:
```php
$query = "foo=bar&bar=baz";
parse_str($query, $arr);
// 结果:$arr = ["foo" => "bar", "bar" => "baz"]
```

5. json_decode()

用途:将 JSON 字符串解析为关联数组。

语法:
```php
json_decode(string $json, bool $assoc = false): mixed
```

示例:
```php
$json = '{"foo": "bar", "bar": "baz"}';
$arr = json_decode($json, true);
// 结果:$arr = ["foo" => "bar", "bar" => "baz"]
```

6. unserialize()

用途:还原已序列化的 PHP 数组。

语法:
```php
unserialize(string $data): mixed
```

示例:
```php
$data = serialize(["foo" => "bar", "bar" => "baz"]);
$arr = unserialize($data);
// 结果:$arr = ["foo" => "bar", "bar" => "baz"]
```

7. array_map()

用途:将回调函数应用于字符串中的每个字符,并将结果转换为数组。

语法:
```php
array_map(callable $callback, array $arr): array
```

示例:
```php
$str = "foo;bar;baz";
$arr = array_map('strtoupper', explode(";", $str));
// 结果:$arr = ["FOO", "BAR", "BAZ"]
```

PHP 提供了各种函数来将字符串转换为数组,每个函数都有其特定的用途和优点。根据需要转换的字符串的结构和格式,选择合适的函数将确保有效高效地完成此任务。

2024-10-17


上一篇:利用 PHP 查询 MySQL 数据库

下一篇:PHP 文件上传:深入指南