2014-01-14 4 views
-3

Пожалуйста, дайте мне знать, как writte код ниже для того, чтобы работать, потому что, как это не работаетодинарные кавычки и двойные кавычки, как устроить?

echo "<a href='$row['url']'>$row['link_text']</a>"; 
+1

Как это не работает? –

+0

Это не работает, потому что у него есть '' 'внутри другого' ''. – Albzi

+2

Что случилось с «недостатком основного понимания»? –

ответ

2

Вы используете ' дважды, так что вам нужно, чтобы избежать их или просто удалить их в этом случае:

echo "<a href='$row[url]'>$row[link_text]</a>"; 
+0

Действительно ли это работает ?! Я никогда не видел заявления, написанного ранее. – Styphon

1

Это будет работать:

echo "<a href='".$row['url']."'>".$row['link_text']."</a>"; 

Кроме того, это:

echo "<a href='{$row['url']}'>{$row['link_text']}</a>"; 

Это личное предпочтение.

Это потому, что вы положили ' внутри другого '.

1
echo "<a href='{$row['url']}'>{$row['link_text']}</a>"; 

или

echo "<a href='" . $row['url'] . "'>" . $row['link_text'] . "</a>"; 

Выберите еще один по своему вкусу.

2

Когда вы должны ввести комплексные переменные, такие как значения массива внутри строки, как правило, printf или sprintf больше ясно и менее подвержено ошибкам .:

printf("<a href='%s'>%s</a>", $row['url'], $row['link_text']); 
+0

Ну, тогда в этом случае вы, вероятно, собираетесь использовать 'printf' в вашем примере тоже :) – Peon

+0

@DainisAbols d'oh! спасибо, что заметили –

3

Напишите, чтобы вы могли прочитать его в следующий раз. Также лучше подчеркнуть синтаксис таким образом:

echo '<a href="' . $row['url'] . '">' . $row['link_text'] . '</a>'; 
1

Вы можете попробовать.

echo "<a href='".$row['url']."'>".$row['link_text']."</a>"; 

Или

echo "<a href='{$row['url']}'>{$row['link_text']}</a>"; 

Или

echo '<a href="'.$row["url"].'">'.$row["link_text"].'</a>'; 
Смежные вопросы