Category Archives: PHP

Как принудить JMSSerializer работать с геттерами (методами) класса

Сериализация в JMSSerializerBundle по умолчанию работает через PHP рефлексии классов, и в таком случаи не вызываются геттеры сериализуемого класса. Для того, чтобы принудить JMSSerializer работать с геттерами конкретного класса, достаточно добавить аннотацию @AccessType «в заголовке» класса. Например: <?php use JMS\Serializer\Annotation\AccessType; /** @AccessType(«public_method») */ class User { private $name; public function getName() { return $this->name; } public function setName($name) { … Continue reading Как принудить JMSSerializer работать с геттерами (методами) класса

Как в PHP удалить BBCode-ы из текста

HTML тэги можно удалить из текта с помощью функции strip_tags или можно их преобразовать в HTML-entities с помощью htmlspecialchars. Но как избавиться как BB кодов из текста? Для их удаления (замены) можно использовать функцию preg_replace с шаблоном (регулярным выражением) |[[\/\!](.*)[^\[\]]*?]|si. Пример: $boldText = «text»; $text = preg_replace(‘|[[\/\!](.*)[^\[\]]*?]|si’, », $boldText);

Как в PHP определить, что запрос пришел по HTTPS

Когда запрос идет по протоколу HTTPS, то в поле $_SERVER будет определена переменная HTTPS => определить, что используется HTTPS можно следующей конструкцией: function is_https() {      return (!empty($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] !== ‘off’); }