Html etiketleri ekleyerek düzenli önlemek

1 Cevap php

Ben bazı html (form elemanları ve tablo elemanları) üreten bir sınıf var, ancak bu sınıf bir satırda tüm html döndürür.

Yani kodu (girinti kod koymak satır sonları, vb) beutify için düzenli kullanmaya çalışıyorum, ben yaşıyorum tek sorun bu da istemiyorum etiketleri üreten bulunuyor olduğunu.

İşte kod:

tidy_parse_string(
                    $table->getHtml(),
                    array(
                            'DocType' => 'omit',
                            'indent' => true,
                            'indent-spaces' => 4,                                    
                            'wrap' => 0                                    
                        )
                );

Ben fazladan html etiketlerini kaldırmak için bulduk tek yolu, böyle bir şey bir str_replace ekleyerek olduğunu:

str_replace(array('<html>','</html>','<body>','</body>','<head>','</head>','<title>','</title>'),'', code);

Çalışır, ama ben gerçekten sadece kodu güzelleştirmek ve ekstra kod eklemek değil düzenli anlatmak için bir yol olacağını attırmak Hangi.

Teşekkürler

1 Cevap

show-body-only seçeneğini deneyin.

örneğin

$s = '<form method="post" action="?"><table><tr><td><input tpye="submit"></table>';
echo tidy_parse_string($s, array('show-body-only'=>true, 'indent'=>true));

baskılar

<form method="post" action="?">
  <table>
    <tr>
      <td>
        <input tpye="submit">
      </td>
    </tr>
  </table>
</form>

(string has been repaired and indented but no html/body wrapper added). Can be combined with the output-xhtml option which in this case would also add the slash for the empty input element.