Вы использовали одинарные кавычки '
для этой строки, поэтому экранирование двойных кавычек "
внутри строки не требуется. Замените это на 'style="margin-right:0px"'
, и оно должно работать нормально.
Чтобы объяснить, как PHP обрабатывает строки и кавычки немного лучше, полезно узнать разницу между '
и "
. Строки, инкапсулированные в '
, всегда отображаются как есть. Внутри строки ничего не анализируется, включая любые escape-символы (например, \n
для новой строки или экранированных кавычек, за исключением экранированных одинарных кавычек \'
). И наоборот, строки, инкапсулированные в "
, анализируются, поэтому, если у вас есть escape-символы, они будут отображаться правильно, а если у вас есть какие-либо переменные в строке, они также будут введены. Например,
// Set name variable to my name
$name = "nhinkle";
// Echo hello name with single quotes
echo 'hello {$name}';
// The result will be "hello {$name}"
// Echo hello name with double quotes
echo "hello {$name}";
// The result will be "hello nhinkle"
Для использования одинарных кавычек требуется меньшая вычислительная мощность, поскольку PHP не нужно сканировать строку, чтобы что-либо экранировать, просто нужно найти конец строки. Однако, если вам нужно разобрать вещи внутри строки, обязательно используйте двойные кавычки.