Открывающие теги PHP и декларация XML

Я новичок в PhpStorm и сталкиваюсь с проблемой при объявлении xml в файле.php. Проблема, о которой я говорю, заключается в том, что PhpStorm относится к <? ?> в качестве коротких открывающих тегов как открывающих тегов php, в то время как я устанавливаю short_open_tag = Off в php.ini.

Как я могу установить PhpStorm, чтобы он не относился к открывающим тегам php как к открывающим тегам php?

2 ответа

Решение

Просто поместите ваш XML в переменную и выведите его:

<?php
$xml = <<<XML
  <?xml version="1.0" encoding="utf-8" standalone="yes" ?>
  <T3locallang>
    <meta type="array">
        <description>CSH for Content Elements Table.</description>
        <type>CSH</type>
        <csh_table>tt_content</csh_table>
    </meta>
  </T3locallang>
XML;

echo $xml;
?>

Для PhpStorm, AFAIK нет другого решения.

PHPStorm на данный момент не имеет никаких настроек для этого (см. WI-2059, добавьте опцию "Отключить короткие теги" к опциям проекта).

Таким образом, вы не можете установить это до сих пор. Все, что вы можете сделать, это написать код так, чтобы он не конфликтовал, например, повторив инструкцию обработки декларации XML:

<?php echo '<?xml version="1.0" encoding="utf-8" ?>' ?>

Переменные, эхо. Мех. Почему бы просто...

<<?php ?>?xml version="1.0" encoding="utf-8" ?>

Нет беспорядка, нет жалоб от PHPStorm или чего-либо еще. В принципе, вы можете даже использовать только <??> вместо <?php ?>, если вам не нужно абсолютно пуленепробиваемое решение, охватывающее оба on а также off футляры для short_open_tag,

Другие вопросы по тегам