Специальные символы не преобразуются в html-сущности (html_entity_decode не работает)

Я пытаюсь кодировать специальные объекты с помощью функции, вот что я пытаюсь сделать:
это функция ratable, со звездами ratables, у меня есть две функции, которые отображают сообщение ratable, одна отображает результаты по умолчанию, а вторая, когда я даю ему новую оценку

function showStars($ratableKey) {
...
$textDesc = "<div id=\"rabidRating-$ratingId-description\" class=\"ratingText\">".$this->getStarMessage($rating)."</div>";
echo $textDesc
}

я называю getStarMessage двумя разными способами

   function getStarMessage($rating) {
$stars = $this->percentToStars($rating['rating']);
if ($rating[totalRatings] > 1) $s = "s";
$div_stars = "<div class=\"rate\">";

$result= "$stars/$this->stars ".$div_stars." ($rating[totalRatings] avis)</div>";
$result=  html_entity_decode($result);
return $result;
}

По умолчанию (в функции showStars) он работает нормально (с или без html_entity_decode)
но когда я вызвал функцию getStarMessage в другой функции

function doVote($ratableId, $percent) {

...

$rating = $this->loadRating($id);
$return = $this->getStarMessage($rating);

echo $return; ==> the problem is here

}

в исходном коде это отображает

<div class="ratingText " id="rabidRating-9-description">2.8/5 &lt;div class="rate"&gt; (141 avis)&lt;/div&gt;</div>

и, следовательно, на выходе это

2.8/5 <div class="rate"> (142 Stars)</div>

Он отображается не как HTML-сущности, а как простая строка.

Я делаю что-то неправильно ?

Вот несколько скриншотов:

отображение по умолчанию:
Отображение по умолчанию без нашего рейтинга

После рейтинга (клик по звездам)
После клика по звездам оценить

0

Решение

Вы хотите, чтобы этот div.rate отображался как HTML? если так, то не стоит ставить&lt «и т. д. сущностей -> это делает полную противоположность того, что вы хотите — он сохраняет символ» меньше чем «в строке.
Так что, если я вас хорошо понял, ваш код должен быть

<div class="ratingText " id="rabidRating-9-description">2.8/5 <div class="rate"> (141 avis)</div></div>

Удачи.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]