Да, можно запустить WebSocket по переходу на страницу с использованием PHP в сочетании с JavaScript. WebSocket - это технология, обеспечивающая двустороннюю связь между клиентом и сервером через одно соединение.
Вам нужно создать WebSocket соединение при загрузке страницы клиентом (браузером) с использованием JavaScript. Вот пример кода:
1. Сначала создайте WebSocket сервер с использованием PHP. Например, с использованием библиотеки Ratchet (https://github.com/ratchetphp/Ratchet):
use RatchetMessageComponentInterface; use RatchetConnectionInterface; require 'vendor/autoload.php'; $server = new RatchetServerIoServer( new RatchetHttpHttpServer( new RatchetWebSocketWsServer( new class implements MessageComponentInterface { public function onOpen(ConnectionInterface $conn) { // обработка открытия соединения } public function onMessage(ConnectionInterface $from, $msg) { // обработка сообщения } public function onClose(ConnectionInterface $conn) { // обработка закрытия соединения } public function onError(ConnectionInterface $conn, Exception $e) { // обработка ошибки } } ) ), new RatchetServerIpBlackList('0.0.0.0', ['127.0.0.1']) ); $server->run();
2. Затем напишите клиентский код на JavaScript для установки WebSocket соединения при загрузке страницы:
// Создание WebSocket соединения при загрузке страницы document.addEventListener("DOMContentLoaded", function(event) { var conn = new WebSocket('ws://localhost:8080'); conn.onopen = function(e) { console.log("Connection established!"); }; conn.onmessage = function(e) { console.log("Message received: " + e.data); }; conn.onclose = function(e) { console.log("Connection closed"); }; });
Таким образом, при переходе на страницу, скрипт JavaScript будет устанавливать WebSocket соединение с вашим сервером на PHP. Взаимодействие между клиентом и сервером будет осуществляться через это соединение.