На мой взгляд, это плохая практика с точки зрения читабельности и удобства сопровождения кода. Хотя бы потому, что это два языка, встроенные друг в друга, что означает, что вы не сможете понять это, не разбирая два языка, и для многих людей это вызывает умственную «ошибку страницы», когда контекст переключается между синтаксическим анализом JS и синтаксическим анализом PHP.
Достаточно просто иметь ветку javascript, основанную на том, какие элементы страницы присутствуют, и, на мой взгляд, это предпочтительное решение. Это лучше, чем условное предоставление определенного javascript (хотя я думаю, что предоставление другого javascript может начать иметь смысл, когда у вас огромное количество js), и это также лучше, чем ветвление на основе URL ... что происходит, когда вы переходите на этот рефакторинг?
Если вы действительно должны разветвлять, какой JS вы предоставляете на основе PHP, я бы хотел видеть их хотя бы в отдельных строках ... что-то вроде:
<?php if($stmt): ?>
$(javascript).code.goes.here
<?php else: ?>
$(alernative.javascript).code.goes.here
<?php endif; ?>
так как это было бы лучше, чем читать и понимать два языка в одной строке / утверждении.