add_magic_quotes() — экранирует спецсимволы во всех элементах массива

Функция экранирует двойную кавычку ", одиночную кавычку ', обратный слэш \ и NUL. По сути она эквивалентна PHP-функции addslashes(), лишь с тем отличием, что работает с массивами.

add_magic_quotes( $array );

$array
(массив) (обязательное) — массив, который нужно обработать.

Возьмем какой-нибудь массив для примера:

$array = array(
	'элемент с " двойной кавычкой',
	array(
		"массив в массиве",
		"элемент с ' одинарной кавычкой"
	),
	'элемент со слэшами \ и кавычками \' '
);
 
print_r( add_magic_quotes( $array ) ); // функция возвращает массив, сразу выводим его

В результате будет выведено вот что:

Array ( 
	[0] => элемент с \" двойной кавычкой 
	[1] => Array ( 
		[0] => массив в массиве 
		[1] => элемент с \' одинарной кавычкой
	) 
	[2] => элемент со слэшами \\ и кавычками \'
)

Миша

В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Комментарии — 1

Комментирование этого поста более не доступно.
  • Игорь 11 апреля 2020 #

    Здравствуйте! Можете подсказать как использовать эту функцию, чтобы экранировать двойные кавычки (") в разметке JSON-LD.

    Проблема в следующем. Стоит плагин Schema, который создает в том числе json разметку по полям "Title" и "Aurthor". У меня на сайте эти поля часто заполняются с использованием кавычек (много разных пользователей. В идеале конечно вообще запретить ввод этих кавычек там, но я не знаю как.). В итоге Google-консоль ругается на ошибку в структурированных данных (что собственно логично, т.к. в JSON-LD кавычки используются для других целей).

    Отсюда и вопрос - как правильно написать эту функцию? (я не программист, поэтому для меня эти массивы темный лес).