0

考虑我数据库中某个字段的以下数据:

admin_language=
language=
editor=
helpsite=
timezone=0
page_title=Edit Your Details
show_page_title=1

我直接从 phpMyAdmin 复制并粘贴了该数据——据我所知,每个 KVP 的中断是一个新行(例如\n)。事实上,我找到了一个论坛,有人在其中编写了一个 PHP 脚本,该脚本也反映了它们是换行符的想法。答案najtrok在 2011 年 5 月 12 日下午 12:18 之前。

但是,以下脚本:

echo $newLine . "settings: $newSettings" . $newLine;

$temp = explode('\n', $newSettings);
foreach ($temp as $kvp) {
    list($key, $val) = explode('=', $kvp);
    echo "key: $key | val: $val" . $newLine;
}

产生以下输出:

settings: admin_language= language= editor= helpsite= timezone= page_title=Edit Your Details show_page_title=1 
key: admin_language | val: language

settings: admin_language= language= editor= helpsite= timezone= 
key: admin_language | val: language

...

我不明白为什么它没有像我期望的那样在新生产线上爆炸。

4

1 回答 1

3

您需要将换行符用双引号 " 而不是单引号 ' 括起来。PHP 对引号的处理方式不同,单引号将字符串按原样处理:\n 其中双引号将引号内的值计算为特殊字符新队。

于 2013-06-16T23:33:27.960 回答