2015-01-06 5 views
-1

Я пытаюсь заменить пробелы - между заголовками через мои URL-адреса, но с трудом делаю это внутри команды echo.замена строк внутри echo

Строка:

<a href=\"entry/{$article['id']} {$article['news_title']}\"> 
    {$article['news_title']} 
</a> 

Я пытался делать:

<a href=\"entry/{$article['id']} 
     .'-' 
     .stripslashes(str_replace(' ', '-', {$article['news_title']})) 
     .'\"> 
    {$article['news_title']} 
</a>  

Но это выбрасывание ошибки. Вот полный код:

echo(" 
     <a href=\"entry/{$article['id']} {$article['news_title']}\"> 
      {$article['news_title']} 
     </a> 
     "); 

ответ

1

Вам необходимо завершить кавычки, чтобы вы могли вызывать функции и использовать конкатенацию.

echo " 
    <a href=\"entry/{$article['id']} {" . stripslashes(str_replace(' ', '-', $article['news_title'])) . "\">{$article['news_title']}</a>   

    "; 

Однако, для удобства чтения, я предлагаю использовать переменную:

$title_url = stripslashes(str_replace(' ', '-', $article['news_title'])); 
echo(" 
    <a href=\"entry/{$article['id']} {$title_url}\">{$article['news_title']}</a>   

    "); 
0

вы пробовали это:

<?php 
$url = "entry/".{$article['id']}.{$article['news_title']}; 
$encoded = rawurlencode ($url); 
echo '<a href="'.$encoded.'">'.{$article['news_title']}.'</a>'; 
?> 
Смежные вопросы