所属分类:php教程
php字符串匹配替换的方法:
<?php $templ = "{username}是个大{adj}比{end}";//测试字符串 //对应数据 $datas = [ 'username' => '我', 'adj' => '帅', 'end' => '。', ]; //不需要替换的字符串 $noMatchs = ['end']; function render($datas = array(), $templ = '', $noMatchs = array()) { //preg_replace_callback() //执行一个正则表达式搜索并且使用一个回调进行替换 return preg_replace_callback('/\\{([\w\-\/]+)\\}/', function ($matches) use ($datas, $noMatchs) { //$matches[1]返回如:username $name = $matches[1]; if (in_array($name, $noMatchs)) { //$mathches[0]返回如:{end} return $matches[0]; } return array_key_exists($name, $datas) ? $datas[$name] : ''; }, $templ); } var_dump(render($datas, $templ, $noMatchs)); //输出结果为:'我是个大帅比{end}'
更多教程请查看php教程频道