Phi*_*hil 3 html php regex bbedit
通常在编写PHP时我会输出一些像这样的HTML -
echo "<a href="../" title="link title">".$link_text."</a>";
Run Code Online (Sandbox Code Playgroud)
显然这不会解析,因为我需要在<a>
元素的属性中转义双引号.是否有正则表达式会快速执行此操作而不是手动添加反斜杠?
另一件事 - 正则表达式不应该在标签之外转义双引号(例如我附加$link_text
变量的地方).
有任何想法吗?
Gre*_*reg 13
你应该只使用单引号:
echo '<a href="../" title="link title">' . $link_text . '</a>';
Run Code Online (Sandbox Code Playgroud)
我能提出的解决方案(并非没有逃脱):
单引号
echo '<a href="../">' . $link_text. '</a>';
Run Code Online (Sandbox Code Playgroud)使用双引号
echo "<a href='../'>$link_text</a>";
Run Code Online (Sandbox Code Playgroud)的sprintf
echo sprintf('<a href="../">%s</a>', $link_text);
Run Code Online (Sandbox Code Playgroud)使用HEREDOC
echo <<<EOF
<a href="../">$link_text</a>
EOF;
Run Code Online (Sandbox Code Playgroud)像smarty一样使用模板引擎
退出PHP模式:
?><a href="../"><?php echo $link_text ?></a><?php // other code...
Run Code Online (Sandbox Code Playgroud)顺便说一句,一定要使用htmlspecialchars()
的$link_text
变量,或者你将有一个XSS安全漏洞.
使用(这种语法不用担心引号等)
echo <<<EOT
<a href="../" title="link title">$link_text</a>
EOT;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
27228 次 |
最近记录: |