Даже если язык не меняет при формате "самописный сайт -> yii/laravel" то в любом случае разговор идет о том, что сайт создается заново. Наследуется только бизнес-логика. В остальных указанных случаях тем более все начинается с нуля.
Чаще всего переписывают только потому, что старое перестало удовлетворять требованиям. Например, был самописный сайт, который разрабатывался одним человеком. Затем бизнес-логика настолько разрослась, что заложенная изначальная архитектура плохо подходит для дальнейшей разработки или плохо масштабируется. Тогда начинают переписывать на php-фрейворках, чтобы можно было разрабатывать например команде разработчиков. Или вообще переписывают на другие языки программирования чтобы уйти от недостатков одного языка и использовать преимущества других языков/технологий.
Инициировать такой процесс может только руководство (правда чаще под влиянием разработчиков), так как в конечном счете платить придется именно руководству за новую разработку.
Профит в том, что создание нового позволит выбрать новейшие технологии, а значит получить максимальные дивиденды от их использования.
Подводных камней всегда куча и главным образом они связаны с тем, что при создании нового проекта, забываются некоторые нюансы, которые были созданы годы назад и уже хорошо протестированы. А при создании нового проекта о них просто можно забыть.
И как следствие, заказчик часто теряет поначалу, как раз потому, что "раньше работало, а теперь не работает". А все потому что забыли, не доделали, упустили из виду, и так далее. Но со временем чаще всего все понимают, что переписывание было не напрасным.