あなたが属性を除去するのDOMDocumentを使用することができる方法の簡単な例 - また、属性を追加することを拡張するが、それはまた別の問題である可能性があります。
$strhtml="
<table width='100%' cellpadding='10px' cellspacing='5px' border='2px'>
<tr>
<td align='left' valign='top'>banana</td>
</tr>
</table>";
$remove=array('cellpadding','cellspacing','border','align','valign');
$dom=new DOMDocument;
$dom->loadHTML($strhtml);
$elements=$dom->getElementsByTagName('*');
foreach($elements as $node){
foreach($remove as $attrib){
if($node->hasAttribute($attrib)){
$node->removeAttribute($attrib);
}
}
}
/* debug output */
echo '<textarea cols=100 rows=10>',$dom->saveHTML(),'</textarea>';
DOMDocumentを使用すると、正規表現で問題が発生する – RamRaider