0

我正在尝试以下代码,以便在锚点和标题中获取标记值。但是代码可以使用锚文本,但标题中只显示单个字符..

  $tag=$info['name']." from ".$info['city'];

  echo'  <td class="title1" bgcolor="#F7F7F7"> <a title='.$tag;  echo' href=details/';
  echo $info['friendly_url'];
  echo' >';
  echo $tag;
  echo'</a></td>';

请注意,标签值类似于“来自 NW 的大卫”;

谢谢你的帮助。

4

2 回答 2

4

您需要在值周围加上引号title,否则空格后面的部分将被解释为(格式错误的)HTML 属性。

echo '<td class="title1" bgcolor="#F7F7F7">';
echo '<a title="'.$tag.'" href="details/' . $info['friendly_url'] . '">';
echo $tag; 
echo'</a></td>';

使用引号将 HTML 属性括起来是一种很好的做法,以避免出现这种情况。

于 2012-08-17T14:52:03.310 回答
0

那是丑陋的代码。重复的回声不可能在短时间内维持。您可以使用HEREDOC并同时使其漂​​亮/易读:

echo <<<EOL
<td class="title1" bgcolor="#F7F7F7">
    <a title="$tag" href="details/{$info['friendly_url']}">$tag</a>
 </td>
EOL;

任何支持 PHP 的现代 IDE 都会正确地为变量着色。并注意如何在 heredoc 中使用引号和变量,而无需进行任何讨厌的字符串连接。

于 2012-08-17T15:22:44.230 回答