Maison >développement back-end >Problème PHP >Comment effectuer la correspondance et le remplacement de chaînes en php
php字符串匹配替换的方法:执行一个正则表达式搜索并且使用一个回调进行替换,代码为【preg_replace_callback()return preg_replace_callback('/\\{([\w\-\/]+)\\}/'】。
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编程(视频)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!