Действительно, ваш вопрос очень поверхностный.
Для начала вы должны понять, что ваше приложение (сайт) оперирует не только html и php, а логикой, отображением (шаблонами, страницами) и данными (пусть это будет база данных). Это конечно упрощенное описание, и все сложнее, но для вас сойдет.
То что я описал это и есть простейшее MVC, такую архитектуру использовать не обязательно, есть другие подходы, но она простая, понятная, надежная и не использовать ее особого смысла нет.
Что это означает на практике? Все ваши файлы должны быть разделены на три категории:
1) Работа с данными (скорее всего это база данных)
2) Логика (некие манипуляции с данными)
3) Шаблоны (файлы где будет верстка)
В первых двух категориях (данные, логика) у вас должно быть
только php. В шаблонах вы уже используете в основном html и только в нужных местах используете php для вывода динамики.
К примеру
Файл работы с данными:
//получили данные из базы
$data = functionForDetDataFormDB();
Файл логики:
//К примеру нам потребовалось обрезать пробелы на концах строк взятых из базы
array_map('trim', data);
Файл шаблона:
<body>
...
<table>
<?php foreach($data as $row):?>
<tr>
<td><?=$row['id']?></td>
<td><?=$row['name']?></td>
<td><?=$row['phone']?></td>
</tr>
<?php endforeach;?>
</table>
...
</body>
Но следует понимать, что то что я описал это лишь простейший пример, вдля того что бы указать вам направление для дальнейшего развития. Все намного сложнее, так что учитесь, читайте книги, изучайте инструменты