$json = defined('JSON_UNESCAPED_UNICODE')
? json_encode($data, JSON_UNESCAPED_UNICODE)
: json_encode($data);
Посоветуйте пожалуйста более красивые решения.Рассмотрите возможность использования статических шаблонов (исполняемого кода не содержащих вовсе). После первой загрузки шаблона шаблонизатором можно закэшировать содержимое шаблона и при последующих его загрузках отдавать его напрямую из кэша. Примерно так:
class SomeTemplater
{
protected $_templates = array();
public function loadTemplate($path) {
if (array_key_exists($path, $this->_templates)) {
$code = $this->_templates[$path];
}
else {
$code = file_exists($path)
? file_get_contents($path)
: false;
$this->_templates[$path] = $code;
}
return $code;
}
}
line-height
) равной удвоенной высоте строки (line-height
), а блоку — overflow: hidden
. Многоточия, конечно, не будет — в настоящее время CSS text-overflow: ellipsis
).display: inline-block
, и высота каждой «строки» будет автоматически подстраиваться под высоту наиболее высокого блока. json_encode()
нет параметра, позволяющего отключить такое кодирование, если кодировка страницы и JSON-данных заведомо совпадает.