Что не так с этим возвратом $? - PullRequest
0 голосов
/ 20 февраля 2012

Мне нужно исправить следующее, не могли бы вы мне помочь?

$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 ]

3 голосов
/ 20 февраля 2012

У вас есть <?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 в {}, когда он сталкивается с другими строками для удобства чтения, хотя это не окажет негативного влияния на синтаксический анализ в этой ситуации, если это не будет сделано.

1 голос
/ 20 февраля 2012

Вам нужно экранировать внутренние кавычки.

$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.

0 голосов
/ 20 февраля 2012

Синтаксически, вам нужно исправить эти двойные кавычки без экранирования в двойных кавычках.

$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 ?>, когда вы можете просто объединить.

...