如何分解多行字符串?

发布于 2024-11-10 09:48:04 字数 411 浏览 2 评论 0原文

我有一个每行都有不同值的字符串:

$matches="value1
value2
value3
value4
value5
";

我想将整个字符串分解为一个由分隔值组成的数组。我知道如何分解空格分隔的字符串,例如 explode(' ', $matches)。但是我如何在这种类型的字符串上使用爆炸函数呢?

我尝试了这个:

$matches=explode('\n',$matches);
print_r($matches);

但结果是这样的:

Array
(
    [0] => hello
hello
hello
hello
hello
hello
hello

)

I have a string that has different values on each line:

$matches="value1
value2
value3
value4
value5
";

I want to explode the whole string in to an array consisting of the values separeted. I know how to explode a space separated string, like explode(' ', $matches). But how do i use the explode function on this type of string?

I tried this:

$matches=explode('\n',$matches);
print_r($matches);

But the result is like:

Array
(
    [0] => hello
hello
hello
hello
hello
hello
hello

)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

╰つ倒转 2024-11-17 09:48:04

您需要将 '\n' 更改为 "\n"

来自 PHP.net

如果字符串包含在
双引号 ("),PHP 会解释
更多特殊的转义序列
字符:

\n 换行(LF 或 ASCII 格式的 0x0A (10))
更多...

You need to change '\n' to "\n".

From PHP.net:

If the string is enclosed in
double-quotes ("), PHP will interpret
more escape sequences for special
characters:

\n linefeed (LF or 0x0A (10) in ASCII)
More...

隱形的亼 2024-11-17 09:48:04

阅读手册

注意:与双引号和
Heredoc 语法、变量和转义
特殊字符的序列将
当它们出现时不会被扩展
单引号字符串。

因此,请使用“\n”而不是“\n”。

此外,您可以使用 PHP_EOL 常量来代替 \n
在Windows中“\r\n”可以用作行尾,对于这种情况你可以进行双重替换:
$matches=explode("\n", str_replace("\r","\n",$matches));

Read manual

Note: Unlike the double-quoted and
heredoc syntaxes, variables and escape
sequences for special characters will
not be expanded when they occur in
single quoted strings.

So use "\n" instead of '\n'

Also, instead of \n you can use PHP_EOL constant.
In the Windows "\r\n" can be used as end of line, for this case you can make double replacement:
$matches=explode("\n", str_replace("\r","\n",$matches));

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文