2013-07-26 20 views
1

回声线,我想回应这行代码,但我总是得到错误信息:与传递的变量

echo '<li class="tab"><a href="'.$setting['site_url'] . '/' . includes/profile/friends.inc.php?id=$id" data-target="'#profile_friends'">'Friends'</a></li>'; 

该错误消息我得到的是这样的:

[26-Jul-2013 23:41:44 Europe/Berlin] PHP Parse error: syntax error, unexpected '" data-target="' (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ';' in /Users/***/Documents/Arcades/Arc_development/arc_projects/***/arc_dev_website/arc_offline/templates/***/pages/profile.php on line 25 

请,任何帮帮我?

+2

你忘了一些点。 – bwoebi

回答

1

原因:

  1. ' .includes/profile/…把它弄坏了。
  2. 此外,"'#profile_friends'">'Friends'<有一些错误产生的单引号,你应该放弃。

尝试

echo '<li class="tab"><a href="'.$setting['site_url'] . '/includes/profile/friends.inc.php?id='.$id.'" data-target="#profile_friends">Friends</a></li>'; 

这一点我完全矫正按预期运行。

+1

这似乎工作。没有更多的错误消息。非常感谢!:D – drpelz

+0

@drpelz不客气!我看到其他人有类似的更正 - 据我所知 - 也工作(例如[这里](http://stackoverflow.com/a/17891539/24323177))。我很高兴我不是不得不决定接受哪个答案的人。 ;) –

3

我相信你想这样做?

echo '<li class="tab"><a href="' . $setting['site_url'] . '/includes/profile/friends.inc.php?id='. $id . '" data-target="#profile_friends">\'Friends\'</a></li>'; 
+0

你已经打了我一分钟。祝贺你快速回答!证明我需要学习打字速度更快......;) –

+0

您的代码行不起作用。这就是我选择另一个的原因。但是,无论如何感谢您的帮助!:D – drpelz

+0

什么没有工作呢? – doitlikejustin

1

您错误地连接了字符串。它应该是:

echo '<li class="tab"><a href="'.$setting['site_url'] . '/includes/profile/friends.inc.php?id='.$id.'" data-target="#profile_friends">'Friends'</a></li>'; 

当使用单引号时,变量不会被展开。用双引号,他们是。您可以像这样重写代码:

echo "<li class='tab'><a href='{$setting['site_url']}/includes/profile/friends.inc.php?id=$id' data-target='#profile_friends'>'Friends'</a></li>"; 

这样,它仍然是一种可读的HTML。

+0

@rid:对,改变了它。 –

+0

是的,的确如此。但使用双引号比单引号稍慢,因为服务器必须找出变量(根据我的PHP书)。 – drpelz

+0

@drpelz这是真的。但代码的可读性也很重要。 –

2

试试这个

echo '<li class="tab"><a href="'.$setting['site_url'] . '/includes/profile/friends.inc.php?id='.$id.'" data-target="\'#profile_friends\'">\'Friends\'</a></li>';