Php 预分割(正则表达式)
如何将数组类型的数据作为Symfony表单中的TextArea获取 我试过这个:Php 预分割(正则表达式),php,arrays,regex,symfony,doctrine-orm,Php,Arrays,Regex,Symfony,Doctrine Orm,如何将数组类型的数据作为Symfony表单中的TextArea获取 我试过这个: $suggest = $table->getSuggestion; /* its format in database is : s:378:"# first_suggest # second_suggest # third_suggest */ $suggest = preg_split("/# (.*)[\n\r]*/", $suggest, null, PREG_SPLIT_DELIM_CAPT
$suggest = $table->getSuggestion;
/* its format in database is :
s:378:"# first_suggest
# second_suggest
# third_suggest
*/
$suggest = preg_split("/# (.*)[\n\r]*/", $suggest, null, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
$table->setSuggestion($suggest);
&因此,它在textarea字段中显示为:
#first suggestion
#second suggestion
#third suggestion
但在数据库中,它似乎如下所示:
a:8:{i:0;s:32:"first_suggest
";i:1;s:47:"second_suggest
";i:2;s:45:"third_suggest";}
这意味着:
array:42 [▼
0 => "first_suggest\r"
1 => "second_suggest \r"
2 => "third_suggest \r"
]
而不是:
a:8:{i:0;s:32:"first_suggest";i:1;s:47:"second_suggest";i:2;s:45:"third_suggest";}
&我不知道哪里出了问题,你能帮我一下吗 你知道这是一个序列化字符串吗?!那么,如果您不想匹配
\r
,为什么不使用“/#”([^\n\r]*)[\n\r]*/”
?您知道这是一个序列化字符串吗?!因此,如果您不想匹配\r
,为什么不使用“/#([^\n\r]*)[\n\r]*/”
?