У меня есть два блока кода PHP: BlockA и BlockB (блок - это всего лишь пара строк кода, обычно 10 или более строк). В зависимости от ситуации мне может потребоваться запустить BlockA до BlockB или BlockB до BlockA. До сих пор я делал это двумя способами, но мне было интересно, есть ли какой-то продвинутый метод для решения этой ситуации.
Метод 1:
if(some condition)
{
BlockA;
BlockB;
}
else
{
BlockB;
BlockA;
}
Это очень уродливо, потому что мне приходится повторять около 50 строк кода дважды, а любое изменение нужно делать два раза (представьте, если бы у меня было пять блоков для заказа).
Метод 2:
Создайте функцию для каждого блока.
if(some condition)
{
BlockA();
BlockB();
}
else
{
BlockB();
BlockA();
}
Это решает проблему повторяющегося кода, но кажется немного странным создавать функции только потому, что вы хотите переупорядочить часть кода. Как профессионалы справляются с этой ситуацией? Ситуация могла бы стать еще более сложной, если бы, скажем, было 10 блоков на заказ.