удалить вкладки из строки и прикрепить ее к другой строке php - PullRequest
0 голосов
/ 18 апреля 2020

Привет, у меня есть HTML, который обрабатывается как строка, я форматирую его в своем бэк-энде и мне нужно, чтобы он также отображался во внешнем интерфейсе

$var1 = 
'
        elseif( isset($_GET["view"]) && !empty($_GET["view"])  )
        {
            define("PAGE","VIEW_PAGE");

            require("VIEW/'.$data["page"].'/'.$data["page"].'.data.json.php");
            $view = json_decode( $viewDatabase );

            if( getIndexOfObjectHasElement($view,"id",$_GET["view"]) !== null ){
                $view = (array) $view[getIndexOfObjectHasElement($view,"id",$_GET["view"])];
            }
            else
            {
                header("location: '.$data["page"].'.php");die();
            }

        }
';

$var2 =
'
   if( !isset($_GET["view"]) && !isset($_GET["add"]) && !isset($_GET["edit"]) )
   {
      define("PAGE","MAIN_PAGE");
   }
   '.$var1.'
';

нужен вывод

echo $var2;

быть

   if( !isset($_GET["view"]) && !isset($_GET["add"]) && !isset($_GET["edit"]) )
   {
      define("PAGE","MAIN_PAGE");
   }
   elseif( isset($_GET["view"]) && !empty($_GET["view"])  )
   {
         define("PAGE","VIEW_PAGE");

         require("VIEW/'.$data["page"].'/'.$data["page"].'.data.json.php");
         $view = json_decode( $viewDatabase );

         if( getIndexOfObjectHasElement($view,"id",$_GET["view"]) !== null ){
            $view = (array) $view[getIndexOfObjectHasElement($view,"id",$_GET["view"])];
         }
         else
         {
            header("location: '.$data["page"].'.php");die();
         }

    }

без форматирования кода внутри переменных, что-то вроде preg_replace, но я не мог этого понять

1 Ответ

0 голосов
/ 18 апреля 2020

Если ваша проблема в том, что html удаляет пробелы и новые строки, вы можете попробовать заменить все новые строки на <br> и пробелы на &nbsp;. Вы можете сделать это в php с

$var1 = preg_replace(" ", "&nbsp;", $var1);
$var1 = preg_replace("\n", "<br>", $var1); 

Если вы также используете табуляции или другие пробелы в своем форматировании, вы должны заменить их соответствующими выражениями в html. Например, для вкладок это даст

$var1 = preg_replace("\t", "&nbsp;&nbsp;&nbsp;&nbsp;", $var1);
...