Laravel 5.1의 이벤트 방송은 PHP의 실시간 앱 개발을 단순화합니다. 이 기능을 사용하면 이벤트를 Pusher 또는 Redis와 같은 실시간 PubSub 솔루션에 게시 할 수 있습니다. 이 기사는이 기능을 사용하여 실시간 할 일 앱을 구축하는 것을 보여줍니다.
우리는 기본 할 일 앱을 실시간 애플리케이션으로 변환 할 것입니다.
주요 개념 :
Laravel 5.1의 이벤트 방송은 Pusher 또는 Redis와 같은 서비스에 이벤트를 게시하여 실시간 PHP 앱을 용이하게합니다.
실시간 기능은 항목이 생성, 업데이트 또는 삭제 될 때 트리거 된 Laravel 이벤트를 정의하여 달성됩니다. 이 이벤트는
인터페이스를 활용합니다
실시간 클라우드 서비스 인 푸셔는 원활하게 통합됩니다. 푸셔 계정과 서버 라이브러리가 필요합니다. Pusher JavaScript 클라이언트는 클라이언트 측 이벤트 처리를 처리합니다
설정 :
가장 간단한 접근법은 홈스테드가 개선 된 것입니다. 또는 GIT 및 작곡가가 설치되어 있는지 확인하십시오. 스타터 앱을 복제하십시오 :
비실한 시간 앱 테스트 : -
초기 앱에는 실시간 업데이트가 없습니다. 두 개의 브라우저에서 홈페이지를 엽니 다. 한 브라우저에서 할 일 목록을 수정하면 수동 새로 고침이 없으면 다른 브라우저에 반영되지 않습니다. 실시간 기능을 추가합시다.
- 실시간 기능 추가 :
우리는 항목 생성, 수정 및 삭제에서 트리거 된 3 개의 라 라벨 이벤트 (, , )를 정의합니다.
방송 이벤트 :
ShouldBroadcast
이 이벤트는
인터페이스를 구현합니다. 이 인터페이스는 방송을 위해 다양한 채널 배열을 반환하는 메소드를 요구합니다. 이벤트를 생성하십시오 :
-
,
및 의 내용을 원본 기사에 제공된 코드로 바꾸십시오 (여기에서 재현하기에는 너무 길다). 이 이벤트는 데이터를 직렬화하여 채널에서 방송합니다.
데이터베이스 이벤트 : -
우리는 Eloquent의 모델 이벤트 (,
, )를 사용하여 서비스 제공 업체 내에서 방송 이벤트를 트리거 할 것입니다 (). 내용을 원본 기사의 코드로 바꾸십시오 (여기서 재현하기에는 너무 길다).
푸셔 통합 :
-
등록 :
푸셔 계정과 새 앱을 만듭니다 (예 : "Todo-App"). , 및 에 주목하십시오
app_id
key
푸셔 PHP 서버 라이브러리 : secret
푸셔 PHP 서버 설치 :
-
javaScript :
태그 in : 에 다음 JavaScript 코드를 추가하십시오.
git clone https://github.com/cwt137/l51-todo-app todo-app
cd todo-app
composer install
php artisan migrate
로그인 후 복사
<🎜 🎜> <<> 기존 JavaScript를 언급하십시오 : in - ,
및 <🎜 🎜> 함수 호출에 주석을 달아라.
<🎜 🎜> <<> 작성 </body>
: resources/views/index.blade.php
생성 <🎜 php artisan make:event ItemCreated
php artisan make:event ItemUpdated
php artisan make:event ItemDeleted
로그인 후 복사
원본 기사에서 JavaScript 코드를 추가하십시오 (여기에서 재현하기에는 너무 길다). 이것은 채널에 가입하고 UI를 업데이트하기 위해 이벤트를 처리합니다.
-
실시간 앱 테스트 :
푸셔 자격 증명을 public/js/app.js
파일로 설정하십시오 :
addItem()
두 브라우저 창을 엽니 다. 한 창의 변경 사항은 즉시 다른 창에 반영되어야합니다. removeItem()
결론 :
Laravel 5.1의 이벤트 방송은 PHP의 실시간 앱 개발을 단순화합니다. Pusher와 같은 서비스와 결합 된이 기능은 역동적이고 반응 형 애플리케이션을 만들 수있는 강력하고 효율적인 방법을 제공합니다. 프레임 워크의 확장 성은 필요에 따라 다른 실시간 솔루션과 통합 할 수 있습니다. 원래 기사의 FAQ는 길이로 인해 여기에서 생략되지만 Laravel의 이벤트 방송에 대한 추가 세부 사항을 다룹니다.
위 내용은 Laravel 5.1 및 이벤트 브로드 캐스트가있는 실시간 앱의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!