Telegram Group & Telegram Channel
Как вы используете трансляцию(broadcasting) в Laravel?

Laravel обеспечивает трансляцию событий в реальном времени с помощью каналов и слушателей. Вот как использовать трансляцию в Laravel:

Шаг 1: Создайте событие

Создайте событие, которое должно транслироваться. Вы можете создать событие, выполнив следующую команду в терминале:

php artisan make:event OrderShipped

Эта команда создаст новое событие класса OrderShipped.

Шаг 2: Зарегистрируйте событие в EventServiceProvider

Добавьте событие OrderShipped в свойство $listen в EventServiceProvider. Это позволит транслировать событие на указанный канал(ы).
protected $listen = [
'App\Events\OrderShipped' => [
'App\Listeners\SendShipmentNotification'
],
];

Шаг 3: Создайте канал

Создайте канал, который будет транслировать событие желаемым слушателям. Вы можете создать канал, выполнив следующую команду:

php artisan make:channel OrderChannel

Эта команда создаст новый канал класса OrderChannel.

Шаг 4: Трансляция события

Транслируйте событие OrderShipped на нужный канал (каналы) с помощью метода broadcast.
use App\Events\OrderShipped;

broadcast(new OrderShipped($order))->toOthers();


Это позволит транслировать событие OrderShipped всем другим подключенным клиентам на указанном канале.

Прослушивание транслируемых событий

Чтобы прослушивать транслируемые события, необходимо создать слушателя, который будет получать транслируемое событие. Вот как создать слушателя:

Шаг 1: Создание слушателя

Создайте слушатель, который будет обрабатывать транслируемое событие. Вы можете создать слушателя, выполнив следующую команду:


php artisan make:listener SendShipmentNotification

Эта команда создаст новый класс слушателя SendShipmentNotification.

Шаг 2: Реализация метода Handle

Реализуйте метод handle, чтобы определить, что должно быть сделано при передаче события.

public function handle(OrderShipped $event)
{
// Отправляем уведомление об отгрузке покупателю
}


Шаг 3: Регистрация слушателя

Зарегистрируйте слушатель SendShipmentNotification в свойстве $listen в EventServiceProvider.

protected $listen = [
'App\Events\OrderShipped' => [
'App\Listeners\SendShipmentNotification'
],
];

Трансляция с помощью Socket.IO

Laravel предоставляет драйвер вещания Socket.IO из коробки. Чтобы использовать этот драйвер, необходимо установить пакеты socket.io-client и laravel-echo.


npm install --save socket.io-client laravel-echo

После установки пакетов необходимо создать новый экземпляр объекта Echo и сконфигурировать его с деталями трансляции в файле resources/js/bootstrap.js.

import Echo from 'laravel-echo'

window.Echo = new Echo({
broadcaster: 'socket.io',
host: window.location.hostname + ':6001',
});


Теперь вы можете использовать объект Echo для прослушивания транслируемых событий.

window.Echo.channel('orders')
.listen('.order.shipped', function(data) {
console.log('Заказ отправлен', data);
});

Это позволит прослушать событие order.shipped на канале orders и вывести данные в консоль при получении события.

После установки пакетов необходимо создать новый экземпляр объекта Echo и сконфигурировать его с деталями трансляции в файле resources/js/bootstrap.js.



tg-me.com/php_interview_lib/828
Create:
Last Update:

Как вы используете трансляцию(broadcasting) в Laravel?

Laravel обеспечивает трансляцию событий в реальном времени с помощью каналов и слушателей. Вот как использовать трансляцию в Laravel:

Шаг 1: Создайте событие

Создайте событие, которое должно транслироваться. Вы можете создать событие, выполнив следующую команду в терминале:

php artisan make:event OrderShipped

Эта команда создаст новое событие класса OrderShipped.

Шаг 2: Зарегистрируйте событие в EventServiceProvider

Добавьте событие OrderShipped в свойство $listen в EventServiceProvider. Это позволит транслировать событие на указанный канал(ы).

protected $listen = [
'App\Events\OrderShipped' => [
'App\Listeners\SendShipmentNotification'
],
];

Шаг 3: Создайте канал

Создайте канал, который будет транслировать событие желаемым слушателям. Вы можете создать канал, выполнив следующую команду:

php artisan make:channel OrderChannel

Эта команда создаст новый канал класса OrderChannel.

Шаг 4: Трансляция события

Транслируйте событие OrderShipped на нужный канал (каналы) с помощью метода broadcast.
use App\Events\OrderShipped;

broadcast(new OrderShipped($order))->toOthers();


Это позволит транслировать событие OrderShipped всем другим подключенным клиентам на указанном канале.

Прослушивание транслируемых событий

Чтобы прослушивать транслируемые события, необходимо создать слушателя, который будет получать транслируемое событие. Вот как создать слушателя:

Шаг 1: Создание слушателя

Создайте слушатель, который будет обрабатывать транслируемое событие. Вы можете создать слушателя, выполнив следующую команду:


php artisan make:listener SendShipmentNotification

Эта команда создаст новый класс слушателя SendShipmentNotification.

Шаг 2: Реализация метода Handle

Реализуйте метод handle, чтобы определить, что должно быть сделано при передаче события.

public function handle(OrderShipped $event)
{
// Отправляем уведомление об отгрузке покупателю
}


Шаг 3: Регистрация слушателя

Зарегистрируйте слушатель SendShipmentNotification в свойстве $listen в EventServiceProvider.

protected $listen = [
'App\Events\OrderShipped' => [
'App\Listeners\SendShipmentNotification'
],
];

Трансляция с помощью Socket.IO

Laravel предоставляет драйвер вещания Socket.IO из коробки. Чтобы использовать этот драйвер, необходимо установить пакеты socket.io-client и laravel-echo.


npm install --save socket.io-client laravel-echo

После установки пакетов необходимо создать новый экземпляр объекта Echo и сконфигурировать его с деталями трансляции в файле resources/js/bootstrap.js.

import Echo from 'laravel-echo'

window.Echo = new Echo({
broadcaster: 'socket.io',
host: window.location.hostname + ':6001',
});


Теперь вы можете использовать объект Echo для прослушивания транслируемых событий.

window.Echo.channel('orders')
.listen('.order.shipped', function(data) {
console.log('Заказ отправлен', data);
});

Это позволит прослушать событие order.shipped на канале orders и вывести данные в консоль при получении события.

После установки пакетов необходимо создать новый экземпляр объекта Echo и сконфигурировать его с деталями трансляции в файле resources/js/bootstrap.js.

BY Библиотека собеса по PHP | вопросы с собеседований


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/php_interview_lib/828

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Pinterest (PINS) Stock Sinks As Market Gains

Pinterest (PINS) closed at $71.75 in the latest trading session, marking a -0.18% move from the prior day. This change lagged the S&P 500's daily gain of 0.1%. Meanwhile, the Dow gained 0.9%, and the Nasdaq, a tech-heavy index, lost 0.59%. Heading into today, shares of the digital pinboard and shopping tool company had lost 17.41% over the past month, lagging the Computer and Technology sector's loss of 5.38% and the S&P 500's gain of 0.71% in that time. Investors will be hoping for strength from PINS as it approaches its next earnings release. The company is expected to report EPS of $0.07, up 170% from the prior-year quarter. Our most recent consensus estimate is calling for quarterly revenue of $467.87 million, up 72.05% from the year-ago period.

In many cases, the content resembled that of the marketplaces found on the dark web, a group of hidden websites that are popular among hackers and accessed using specific anonymising software.“We have recently been witnessing a 100 per cent-plus rise in Telegram usage by cybercriminals,” said Tal Samra, cyber threat analyst at Cyberint.The rise in nefarious activity comes as users flocked to the encrypted chat app earlier this year after changes to the privacy policy of Facebook-owned rival WhatsApp prompted many to seek out alternatives.telegram from sg


Telegram Библиотека собеса по PHP | вопросы с собеседований
FROM USA