, href="javascript:" en
* src op ` en laat het commentaar open.
* Een element zonder sluittag blijft zoals het was.
*
* @param string $html HTML.
* @param array $bewaard Uit: plaatshouder => originele inhoud.
* @return string HTML met plaatshouders.
*/
private static function ruw_uit( $html, array &$bewaard ) {
// (?=[\s/>]): `` is geen . Zonder die eis zocht de scan een
// `])(?:[^>"\']++|"[^"]*+"|\'[^\']*+\')*+>#i';
$sleutel = 'aigeschikt_ruw_' . bin2hex( random_bytes( 8 ) ) . '_';
$uit = '';
$pos = 0;
while ( preg_match( $open, $html, $m, PREG_OFFSET_CAPTURE, $pos ) ) {
$eind_open = $m[0][1] + strlen( $m[0][0] );
if ( '', $eind_open );
$tot = false === $dicht ? strlen( $html ) : $dicht + 3;
$uit .= substr( $html, $pos, $tot - $pos );
$pos = $tot;
continue;
}
if ( ! preg_match( '#' . $m[1][0] . '[\s/>]#i', $html, $s, PREG_OFFSET_CAPTURE, $eind_open ) ) {
// Geen sluittag: dit element laten we staan, maar de rest van de pagina
// blijft beschermd.
$uit .= substr( $html, $pos, $eind_open - $pos );
$pos = $eind_open;
continue;
}
$inhoud = substr( $html, $eind_open, $s[0][1] - $eind_open );
$uit .= substr( $html, $pos, $eind_open - $pos );
$pos = $s[0][1];
// Alleen wat libxml BESCHADIGT gaat opzij; een plaatshouder op iets anders
// verandert de tekst van de ouder (een