如何使用';及;在PHP和Javascript的代码中?
我想知道如何在代码中使用大量的“and” 例如:如何使用';及;在PHP和Javascript的代码中?,javascript,php,Javascript,Php,我想知道如何在代码中使用大量的“and” 例如: echo 'document.write("<a href='$url'> <img src='{$row["image"]}' border='0' /> </a>");'; echo'document.write(“”); 我试过了,但出现了错误。任何人都可以帮助吗?这将起作用: <?php $url = "http://www.google.com"; $row = array("image"
echo 'document.write("<a href='$url'> <img src='{$row["image"]}' border='0' /> </a>");';
echo'document.write(“”);
我试过了,但出现了错误。任何人都可以帮助吗?这将起作用:
<?php
$url = "http://www.google.com";
$row = array("image" => "image.png");
echo "document.write('<a href=\"$url\"> <img src=\"".$row["image"]."\" border=0 /> </a>');";
// output: document.write('<a href="http://www.google.com"> <img src="image.png" border=0 /> </a>');
?>
因此,您在这里遇到了多层次的问题:
回显到html的数据通常应该通过htmlspecialchars正确转义
您想查看文档。编写(“…”)
在最终生成的html中,这将触发javascript语法错误
为避免此错误,应在“字符串内部”之前使用\
echo'文档。写(“”;;
注意:我使用单引号的echo,如果使用双引号,则必须使用双引号
如果使用双引号,您的代码将如下所示:
echo“document.write(\“\”);“;
这里有三种方法来解决这个问题
1.避开内部双斜杠
echo”文档。写入(“”);";
2.关闭PHP标记并编写javascript
?>
文件。写(“”);
您可以使用heredoc语法:
echo <<<EOT
document.write(<a href='{$url}'> <img src='{$row["image"]}' border='0' /> </a>);
EOT;
echo您想要实现什么?@Rhopercy一个带有链接hrefYou的图像可以转义您的HTML属性。Smarty模板呢?使用您当前的代码,属性将不会被引用,即href=http://example.com
@FernandoOliveira:Updated.@Reto by unbuffered您的意思是不会创建任何字符串,但会创建every块将由其自己输出?