我在这样的数据库中存储了动态链接
http://{$site}.com/{$username}
并在PHP文件中
$site = google.com;$username = 2;
但是当我从db获取时它不会用php变量替换它只是输出为
http://{$site}.com/{$username}
我试过preg_replace('/\{\$([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)\}/e', "$$1", $row['url']);
但是它只替换了mysql中的一个变量,取出了其他的静态字符串。
还有另一种方法可以用{php}变量替换{}
中的所有值。
答案 0 :(得分:0)
您将数据作为字符串获取,因此var值不会替换
http://{$site}.com/{$username}
// not varable {$site} and {$username}
这是一个字符串
尝试插入完整网址或尝试
只需在输出时使用: -
$tmpurl = str_replace('{$site}', $site, $row['url']);
$url = str_replace('{$username}', $username, $tmpurl);