PHP está convirtiendo comillas simples y dobles: ' y " en los caracteres: ' y ” ( https://unicode-table.com/en/2019/ y https://unicode-table.com/en/201D/ ) ( comillas simples derechas y comillas dobles derechas)
Solo hace esto en funciones de flecha:
<div class="modal onclick="(() => { console.log('test button clicked'); })()">
<!-- modal contents -->
</div>
PHP escupe las comillas incorrectas:

onclick="(() => { console.log('test button clicked'); })()”
<div class="modal onclick="console.log('test button clicked')">
<!-- modal contents -->
</div>
onclick="(() => console.log('test button clicked')"
Esto es solo en archivos .php ; En un archivo .html esto funciona bien:
onclick="(() => { console.log('test button clicked'); })()"
Esto significa que no puedo usar una función de flecha en línea en un elemento HTML porque PHP convierte incorrectamente las comillas en caracteres de comillas Unicode, lo que representa esas comillas en el DOM y el navegador continúa manejando el resto de la página (como debería) como dentro comillas dobles y dentro del onclick (como debería) hasta que encuentre otra comilla doble de otra propiedad HTML.
Estoy usando PHP 8.0.0. He intentado investigar esto y no puedo encontrar nada más al respecto. Tan audaz como es una afirmación, creo que he encontrado un error en PHP, aunque me gustaría que alguien más calificado que yo lo determine.