<?php
$html = <<<DATA
<form>
<input type="hidden" name="test[]" />
<input type="hidden" name="old[]" />
<input type="hidden" name="new[]" />
</form>
DATA ;
$dom = new DOMDocument( '1.0' , 'UTF-8' ) ;
$dom -> loadHTML ( $html , LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD) ;
$xpath = new DOMXPath( $dom ) ;
$inputs = $xpath -> query ( '//input[@name]' ) ;
foreach ( $inputs as $input ) {
$name = $input -> getAttribute ( 'name' ) ;
if ( substr ( $name , - 2 ) === "[]" ) { $newval = substr ( $name , 0 , $input -> getAttribute ( 'name' ) -> length - 2 ) ; $input -> setAttribute ( 'name' , $newval ) ;
}
}
echo $dom -> saveHTML ( ) ;
PD9waHAKCiRodG1sID0gPDw8REFUQQo8Zm9ybT4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idGVzdFtdIiAvPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvbGRbXSIgLz4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ibmV3W10iIC8+CjwvZm9ybT4KREFUQTsKCiRkb20gPSBuZXcgRE9NRG9jdW1lbnQoJzEuMCcsICdVVEYtOCcpOwokZG9tLT5sb2FkSFRNTCgkaHRtbCwgTElCWE1MX0hUTUxfTk9JTVBMSUVEIHwgTElCWE1MX0hUTUxfTk9ERUZEVEQpOwoKJHhwYXRoID0gbmV3IERPTVhQYXRoKCRkb20pOwokaW5wdXRzID0gJHhwYXRoLT5xdWVyeSgnLy9pbnB1dFtAbmFtZV0nKTsKCmZvcmVhY2goJGlucHV0cyBhcyAkaW5wdXQpIHsgCgkkbmFtZSA9ICRpbnB1dC0+Z2V0QXR0cmlidXRlKCduYW1lJyk7CglpZiAoc3Vic3RyKCRuYW1lLCAtMikgPT09ICJbXSIpIHsKCQkkbmV3dmFsID0gc3Vic3RyKCRuYW1lLCAwLCAkaW5wdXQtPmdldEF0dHJpYnV0ZSgnbmFtZScpLT5sZW5ndGggLSAyKTsKCQkkaW5wdXQtPnNldEF0dHJpYnV0ZSgnbmFtZScsICRuZXd2YWwpOwoJfQp9CgplY2hvICRkb20tPnNhdmVIVE1MKCk7Cg==