我有一个表单文本区域,我希望用户将数据粘贴到其中,然后在提交时使用某些PHP进行处理并返回列表,但编号为每个carraige返回。
例如,用户输入;
Ben
Chris
Morris
PHP返回;
1=Ben
2=Chris
3=Morris
尝试了一些preg_replace_callback技术,但无法理解它。不太熟悉它的工作方式;
$list = $_POST["list"]; $count = 0;
preg_replace_callback('\r\n', 'rep_count', $list);
function rep_count($matches) {
global $count;
return '<br />' . $count++;
}
echo $list;
答案 0 :(得分:1)
你有几个错误:
preg_replace_callback('\r\n', 'rep_count', $list);
^^^^^^
您的模式不正确 - 它缺少分隔符,应该是/\r\n/
。同样,对模式使用'
引用的字符串会使\r
和\n
只是转义为字母字符 - '
- 引用的字符串没有&#34; metachars&# 34;比如换行和回车。
基本上你需要
preg_replace_callback("/\r\n/", 'rep_count', $list);
请注意"
引号和/
分隔符。