Escape-последовательность для пробела в PHP - PullRequest
1 голос
/ 24 января 2012

В настоящее время я использую приведенный ниже фрагмент кода, в котором для отступа полученного HTML-кода используются несколько пробелов:

add_filter('get_search_form', 'filter_search_form');

function filter_search_form($form) {
    $form = '      <form role="search" method="get" id="searchform" action="' . home_url('/') . '"><input type="text" placeholder="' . __('Search') . '" value="' . get_search_query() . '" name="s" id="s"><input type="submit" id="searchsubmit" value="' . esc_attr__('Search') . '"></form>' . "\n";
    return $form;
}

Сейчас я читал некоторые о пробельных символах (\t для табуляции, \n для новой строки и т. Д.), Но я не совсем уверен, как реализовать это в этой ситуации. Я пытался использовать \s для одного пробела, но безуспешно, таким образом.

Будучи относительно новым для PHP, я надеюсь, вы могли бы помочь (желательно без использования «обычного» пробела).

Ответы [ 3 ]

3 голосов
/ 24 января 2012

Согласно http://php.net/manual/en/regexp.reference.escape.php, общая шестнадцатеричная escape-последовательность \x20 должна работать, как и \040 (восьмеричное).

Лично я не вижу особой (если вообще есть) выгоды в том, чтобы когда-либо указывать пробелы таким образом, так как это сделает ваш код менее читабельным, ИМХО. Просто вставьте буквальные пробелы внутри одинарных или двойных кавычек (как у вас сейчас) и покончите с этим.

В качестве альтернативы, если вы пытаетесь использовать пробелы для отступа в результирующем HTML-коде (как вам кажется), выполнение в единицах \t не конец света.

2 голосов
/ 24 января 2012

Символы типа \t и \n должны быть в двойных кавычках ...

$string = "\t" . '<form></form>';

1 голос
/ 24 января 2012

Если вы хотите вставить вкладку перед ней, вы можете использовать:

$string = "\t" . '<form>....';

(не забывайте двойные кавычки, одиночные не работают с \ t, \ n и друзьями!)

Если вам нужны пробелы, просто используйте пробелы!

$string = "        " . '<form>....';

Это HTML-код, поэтому они будут присутствовать в исходном коде вашей страницы. Они не «свернутся» в одно пространство.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...