这个$ return的错误是什么?

时间:2012-02-20 00:05:11

标签: php html return

我需要解决以下问题,请帮助我吗?

$return .= "<a href='<?php echo $kinsource ;?>' class="lightbox" rel="pics"><img src='<?php echo get_bloginfo('template_url')."/timthumb.php?src=".$kinsource."&w=120&h=120&zc=1";?>' alt=""/></a>";

3 个答案:

答案 0 :(得分:3)

你在现有的PHP代码中有<?php ?>。你无法嵌套<?php ?>。由于您使用的是双引号,因此将插入像$kinsource这样的简单变量,但是必须连接到get_bloginfo()的函数调用。将字符串中的所有其他双引号切换为单引号。

$return .= "<a href='$kinsource' class='lightbox' rel='pics'><img src='" . get_bloginfo('template_url') ."/timthumb.php?src='{$kinsource}&w=120&h=120&zc=1' alt=''/></a>";

注意,我在$kinsource中包含{}时,为了便于阅读而遇到其他字符串,但如果不这样做,它不会对这种情况下的解析产生负面影响。< / p>

答案 1 :(得分:1)

您需要转义内部引号。

$return .= "<a href='<?php echo $kinsource ;?>' class=\"lightbox\" rel=\"pics\"><img src='<?php echo get_bloginfo('template_url').\"/timthumb.php?src=\".$kinsource.\"&w=120&h=120&zc=1\";?>' alt=\"\"/></a>";

或者你的php中有<?php ?>个标签,如果你已经在php块中,那么这个标签不起作用。

答案 2 :(得分:0)

从语法上讲,你需要用双引号修复那些未转义的双引号。

$return .= '<a href="'.$kinsource.'" class="lightbox" rel="pics"><img src="'.get_bloginfo('template_url').'"/timthumb.php?src="'.$kinsource.'"&w=120&h=120&zc=1" alt=""/></a>";

当你可以连接时,你不需要在<?php ?>中回显。