Mike_Ro
@Mike_Ro
Python, JS, WordPress, SEO, Bots, Adversting

PHP кавычки, одинарные и двойные, как правильно?

Добрый день! Вот код:
echo '<table cellspacing="1" width="100%">';
	do {
		echo "
		<tr>
			<td>$dbGetUsersResult[id]</td>
			<td>$dbGetUsersResult[name]</td>
			<td>$dbGetUsersResult[height]</td>
			<td>$dbGetUsersResult[sclass]</td>
			<td><a href='#' id='delete-link' data-id="{$dbGetUsersResult['id']}">X</a></td>
		</tr>";
	}
	while ($dbGetUsersResult = mysql_fetch_array($dbGetUsers));
echo "</table>";

Проблема в том, что я не понимаю, когда использовать одинарные, а когда - двойные кавычки... Вот в моем примере, я вообще запутался, ибо всегда - белый экран.
Помогите разобраться, спасибо!
  • Вопрос задан
  • 858 просмотров
Решения вопроса 3
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Комментировать
wielski
@wielski
✔ Совет: Вам помогли? Отметьте ответы решением.
Когда вы используете одинарные кавычки, в строке все одинарные кавычки должны быть экранированы символом \
Для двойных кавычек действует точно такое же правило.

К примеру, для вашего кода:
echo '<table cellspacing="1" width="100%">';
  do {
    echo "
    <tr>
      <td>{$dbGetUsersResult[id]}</td>
      <td>{$dbGetUsersResult[name]}</td>
      <td>{$dbGetUsersResult[height]}</td>
      <td>{$dbGetUsersResult[sclass]}</td>
      <td><a href=\"#\" id=\"delete-link\" data-id=\"{$dbGetUsersResult['id']}\">X</a></td>
    </tr>";
  }
  while ($dbGetUsersResult = mysql_fetch_array($dbGetUsers));
echo "</table>";


А вообще, лучшее решение - использовать для целей вывода информации шаблонизатор.
Еще лучше - использовать фреймворк, дабы разделять логику приложения, и html код с результатом работы.
Я бы посоветовал Laravel.
Ответ написан
@Silm
про шаблоны и фреймворки знаю, но мне-бы подтянуть вначале чистый php

Тогда воспользуйтесь альтернативным синтаксисом управляющих конструкций:
<?php 
/// некий код
?>

<table cellspacing="1" width="100%">
<?php while ($dbGetUsersResult = mysql_fetch_array($dbGetUsers)): ?>
    <tr>
      <td><?=$dbGetUsersResult['id']?></td>
      <td><?=$dbGetUsersResult['name']?></td>
      <td><?=$dbGetUsersResult['height']?></td>
      <td><?=$dbGetUsersResult['sclass']?></td>
      <td><a href="#" id="delete-link" data-id="<?=$dbGetUsersResult['id']?>">X</a></td>
    </tr>
<?php endwhile?>
</table>


php.net/manual/ru/control-structures.alternative-s...

Кроме того! Зайдите вот сюда: php.net/manual/ru/function.mysql-fetch-array.php и прочитайте что написано в самом верху внутри большого розового прямоугольника.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы