Intereting Posts
Изменить центр карты в соответствии с вводом автозаполнения с помощью google maps codeigniter library как добавить границу изображения вокруг изображения? Как получить список модулей apache, включенных с помощью php Рабочий пример реализации «Аутентификация на основе токенов» с использованием «JSON Web Token (т.е. JWT)» в PHP и MySQL? как показать текст при вводе текста в jquery Как удалить конечные нули после третьего десятичного знака в PHP? Ошибка Zend через мой INI-файл MySQL PHP PDO подготовил заявления – проблемы производительности и безопасности Каков наилучший способ изучения mvc в PHP? загрузка изображения в форму с помощью codeigniter / ajax Могу ли я разработать отдельные API-вызовы с помощью php для мобильного приложения, используя сайт wordpress? Как использовать Angular 2 в приложении PHP? Как получить долготу и широту любого адреса? Малый алгоритм сортировки в php Почему я не могу использовать LOAD DATA LOCAL с PDO, хотя я могу от клиента cli?

Как печатать $ с php

В основном у меня есть блок html, который я хочу повторить на странице, и html имеет знак $ в нем, и php считает, что это переменная, поэтому $ 1 рассматривается как переменная, а не значение и не отображается.

Здесь есть стандартные ответы, но никто не работает: PHP: Как получить $ для печати с использованием эха

Моя следующая идея состоит в том, чтобы разделить строку на $ и echo на каждую часть.

Вот код, который я пробовал эхо и печать.

foreach ($rows as $rowmk) { $s = $rowmk->longdescription; //$s = str_replace('$', '@', $s); $s = str_replace('$', '\$', $s); //echo "$s" . "<br>"; print $s; } 

Вся помощь была оценена.

ОК, я решил, используя значение символьного кода для $

 foreach ($rows as $rowmk) { $s = $rowmk->longdescription; $s = str_replace('$', '$', $s); echo $s . "<br>"; } 

Я решил, что должен просто опубликовать его в любом случае.

Благодаря,

Мат

Вы делаете это не в том месте. Переменная-интерполяция выполняется, когда двойной кавычек строкового литерала (который в вашем случае хранится в $rowmk->longdescription daclared. После этого вы не можете ничего сделать, чтобы вернуть свои $ s обратно.

Решение, выполняйте правильное экранирование, когда вы объявляете строку.

Или вы можете эхо-строку с использованием одиночных кавычек …

 <?php echo 'Give me $1'; ?> 

будет печатать:

Дайте мне 1 доллар

PHP string docs:

http://php.net/manual/en/language.types.string.php

Сторона примечания – ссылка, которую вы предоставляете, имеет много ответов, которые будут работать отлично. Как вы применяете их таким образом, чтобы это не сработало?

Просто используйте одиночную кавычку.

 $foo = 'Hello'; echo '$foo'; // $foo echo "$foo"; // Hello 

Я предполагаю, что вы читаете свои строки из базы данных. Знаки доллара внутри этих строк не будут интерполированы php. Вот небольшой тестовый скрипт, чтобы попробовать:

  // you'd first have to set the three variables according to your database $dbh = new PDO($DSN, $DB_USER, $DB_PASS); // create a table and insert a string containing a dollar sign $dbh->exec('CREATE TABLE IF NOT EXISTS some_text ( longdescription VARCHAR( 255 ))'); $dbh->exec('INSERT INTO some_text ( longdescription ) VALUES ( "10 $" )'); // query all the data from the table $query =$dbh->query("SELECT * FROM some_text"); $rows = $query->fetchAll(PDO::FETCH_CLASS); // loop over all the rows (as in your example) and output the rows // no problem at all foreach ($rows as $rowmk) { $s = $rowmk->longdescription; echo $s . "<br>"; } 

Я сделал это, используя это

 echo "$" . "VariableName";