1

変更した HTML を保存 (ダンプ) したいと思います。

php_simplehtmldom保存機能でライブラリとダンプを使用しました。

しかし、simplehtmldomライブラリは間違った構文を自動的に修正します。

「間違った構文を置換せずに無視して保存する方法」を知っている人はいますか?

フォローダウンのように置き換えたくありません。入力タグにタイトル属性を追加したいだけです。

元)

    $oSimpleHtmlParser = file_get_html(
                            $sPath,
                            $use_include_path=false,
                            $context=null,
                            $offset=-1,
                            $maxLen=-1,
                            $lowercase=false,
                            $forceTagsClosed=false,
                            $target_charset=DEFAULT_TARGET_CHARSET,
                            $stripRN=false,
                            $defaultBRText=DEFAULT_BR_TEXT,
                            $defaultSpanText=DEFAULT_SPAN_TEXT
                         );
    $oRetVal = $oSimpleHtmlParser->find('input');
    foreach($oRetVal as $key => $val){
        if($val->title == "") {
            $oRetVal[$key]->title = "title";
        }
    }
    $oSimpleHtmlParser->save($sPath);

保存された結果

<table border=0 cellpadding=0 cellspacing=0 width=295 style="padding-left:5">
      <tr><td height="12" colspan="2"></td></tr>
      <tr><td height="20" class="fc_55"><img src="/web/design/{$_DESIGN}/images/dot_2px.gif" style="margin:0 0 3 0"></td>
-         <td align="right" class="fc_55"" width="78">[2007-02-21]</td>
+         <td align="right" class="fc_55">[2007-02-21]</td>
-         <input type="text" style="width:251" align="absmiddle" class="border">
+         <input type="text" style="width:251" align="absmiddle" class="border" title="title">

      </tr>

期待される結果

<table border=0 cellpadding=0 cellspacing=0 width=295 style="padding-left:5">
      <tr><td height="12" colspan="2"></td></tr>
      <tr><td height="20" class="fc_55"><img src="/web/design/{$_DESIGN}/images/dot_2px.gif" style="margin:0 0 3 0"></td>
          <td align="right" class="fc_55"" width="78">[2007-02-21]</td>
-         <input type="text" style="width:251" align="absmiddle" class="border">
+         <input type="text" style="width:251" align="absmiddle" class="border" title="title">
      </tr>
4

0 に答える 0