2010-09-14 6 views
-1
function formatUpdate($tweet,$dt,$picture,$username) 
{ 
    if(is_string($dt)) $dt=strtotime($dt); 

    $tweet=htmlspecialchars(stripslashes($tweet)); 


     $at = "@" . $username; 




    return' 
    <li> 
    <a href="nano.com/' . $username . '"><img class="avatar" src="images/' . $picture . '" width="48" height="48" alt="avatar" /></a> 
    <div class="tweetTxt"> 
    <strong><a href="nano.com/' . $username . '">' . $username . '</a></strong> '. preg_replace('/((?:http|https|ftp):\/\/(?:[A-Z0-9][A-Z0-9_-]*(?:\.[A-Z0-9][A-Z0-9_-]*)+):?(\d+)?\/?[^\s\"\']+)/i','<a href="$1" rel="nofollow" target="blank">$1</a>',$tweet).' 
    <div class="date">'.relativeTime($dt).'</div> <a class ="reply" href="?replyto=' echo $at; '">reply</a> 
    </div> 
    <div class="clear"></div> 
    </li>'; 

} 
+0

код в ваш вопрос очень плохо отформатирован и последняя строка является синтаксической ошибкой в ​​себе. Я даже не уверен, что редактирование матбаста сделало что-нибудь, чтобы улучшить его. Не могли бы вы вставить полный код? – BoltClock

+0

это всего лишь часть кода, я просто хотел показать вам фрагменты кода, чтобы доказать мои вопросы! – getaway

+0

Ну, как выглядит ваш код прямо сейчас, вы не назначаете строку переменной и не повторяете ее. Если ваш код выглядит так, есть проблема. – BoltClock

ответ

0

Чтобы добавить значение переменной в строку нужно не повторить переменную.

Вы

href="?replyto=' echo $at; '">reply</a> 

Изменить его

href="?replyto='. $at .'">reply</a> 
+0

ваше право спасибо, но проблема это на странице он показывает имя @us вместо ссылки «ответить»? его странный. я думаю, что я делаю concat неправильно – getaway

1

болт - правый. часто конкатентная проблема связана с путаницей смешанного кода, литералов и закрытия котировок/двойных кавычек. попробуйте использовать heredoc вместо очистки кода.

, например, я хотел бы сделать следующее, чтобы сохранить глаза уставились на код и сохранить свой разум от безумия, пытаясь найти, где ошибка синтаксиса (псевдо-кодирование только):

$at = "@$username"; 
$rt = relativeTime($dt); 

$out = <<<raw 
    <div class="date">$rt</div> 
    <a class ="reply" href="?replyto=$at">reply</a> 
raw; 

просто посмотрите, насколько проще это выглядит?

, чтобы узнать о heredoc здесь, в качестве ссылки для чтения.

исх: http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

Смежные вопросы