Ответ 1
Кажется, вам может быть удобнее разрабатывать в PHP, что позволяет вам удержать вас от использования полного потенциала с помощью веб-приложений.
Действительно, возможно иметь частичные части PHP и целые представления, но я бы не рекомендовал их.
Чтобы полностью использовать возможности HTML и javascript для создания веб-приложения, то есть веб-страницы, которая больше похожа на приложение и в значительной степени зависит от рендеринга на стороне клиента, вы должны подумать о том, чтобы позволить клиенту поддерживать всю ответственность за управление состоянием и презентация. Это будет проще в обслуживании и будет более удобным для пользователя.
Я бы порекомендовал вам более удобное мышление в более ориентированном на API подход. Вместо того, чтобы PHP выводить предварительное визуализированное представление и использовать angular для простой манипуляции с DOM, вы должны подумать о том, чтобы иметь бэкэнд PHP, данные, которые должны быть обработаны RESTFully, и иметь angular.
Использование PHP для визуализации представления:
/user/account
if($loggedIn)
{
echo "<p>Logged in as ".$user."</p>";
}
else
{
echo "Please log in.";
}
Как эта же проблема может быть решена с помощью подхода, ориентированного на API, путем вывода JSON следующим образом:
api/auth/
{
authorized:true,
user: {
username: 'Joe',
securityToken: 'secret'
}
}
и в angular вы можете сделать get и обработать клиентскую часть ответа.
$http.post("http://example.com/api/auth", {})
.success(function(data) {
$scope.isLoggedIn = data.authorized;
});
Чтобы сочетать как клиентскую, так и серверную сторону, предложенный вами способ может быть подходящим для небольших проектов, где обслуживание не важно, и вы являетесь единственным автором, но я больше склоняюсь к центру API, поскольку это будет более правильное разделение и будет легче поддерживать.