Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在echo语句中使用双引号和单引号_Php_Echo - Fatal编程技术网

Php 在echo语句中使用双引号和单引号

Php 在echo语句中使用双引号和单引号,php,echo,Php,Echo,我正在努力解决如何在echo语句中同时使用双引号和单引号,而不必打开echo 例如,我想创建一个输出如下的链接: <a href="http:/www.blah.com" class="read-more" onClick="_gaq.push(['_trackEvent', 'External Link', 'Buy Link', 'Item name']);">Read this post...</a> 但是当涉及到onClick中的参数时,我就被卡住了,因为我不能

我正在努力解决如何在echo语句中同时使用双引号和单引号,而不必打开echo

例如,我想创建一个输出如下的链接:

<a href="http:/www.blah.com" class="read-more" onClick="_gaq.push(['_trackEvent', 'External Link', 'Buy Link', 'Item name']);">Read this post...</a>
但是当涉及到onClick中的参数时,我就被卡住了,因为我不能在使用“breaks open my echo:

echo '<a href="<?php echo the_permalink(); ?>" class="read-more" onClick="_gaq.push(['_trackEvent', 'External Link', 'Buy Link', ''. echo $pattern_name .'']);">Read this post...</a>';
因此,上面的代码在到达“trackEvent”部分时中断,因为单引号将其打开


我能做什么?

旁白:如果您这样做,您的HTML代码将更具可读性:

<a
    href="http:/www.blah.com"
    class="read-more"
    onClick="_gaq.push(['_trackEvent', 'External Link', 'Buy Link', 'Item name']);"
>Read this post...</a>

每个属性都有自己的行,因此很容易找到,并且在编辑器中水平滚动变得不那么必要。最棒的是,这是一个非常有效的HTML。

您有一些选择,但我个人认为,当使用类似echo的东西时,它的代码很难看 我会提出更多类似的建议

$pattern_name = "something";
$linkhref = someFunction();
echo "<a href='{$linkhref}' class='read-more' onclick='_gaq.push([\"_trackEvent\", \"External Link\", \"Buy Link\", \"{$pattern_name}\"]);'>Read this post...</a>";
这个

$pattern_name = "something";
echo "<a href='".someFunction()."' class='read-more' onclick='_gaq.push([\"_trackEvent\", \"External Link\", \"Buy Link\", \"{$pattern_name}\"]);'>Read this post...</a>";
只是个人喜好

结果

<a href='index.php' class='read-more' onclick='_gaq.push(["_trackEvent", "External Link", "Buy Link", "something"]);'>Read this post...</a>
使用复杂的卷曲语法,反斜杠是您最好的朋友:

echo '<a href="'.the_permalink().'" class="read-more" onClick="_gaq.push([\'_trackEvent\', \'External Link\', \'Buy Link\', \''. $pattern_name .'\']);">Read this post...</a>';

转义嵌套的单引号:onClick=\u gaq.push[\\\'u trackEvent\',Hi there@Mayhem:请看我文章开头的旁白。它的意思是,在英语中,不完全相关,但你可能希望知道这一点。我认为这很有帮助,因此CW也是。我懂英语,但我认为你不明白回答OP问题的意义。格式化代码在这里不相关……OP只是想知道了解使用echo的方法。他们没有询问格式化问题…我很好地理解这个问题@Mayhem。是的,格式化代码不是这里的解决方案,但它仍然很有用。谢谢你的想法。谢谢你在这里编辑@Afriend。我回滚了这一条,因为代码已更改-标记内的空格通常有一个材质ef影响呈现。我认为旁白也很重要-它被设计用来表示它是补充答案材料,而不是主要答案。只需注意..这是逃避..万一有人想用谷歌搜索..反斜杠可能意味着任何东西。
echo '<a href="'.the_permalink().'" class="read-more" onClick="_gaq.push([\'_trackEvent\', \'External Link\', \'Buy Link\', \''. $pattern_name .'\']);">Read this post...</a>';