मैं संघर्ष करने वाला आदमी जानता हूँ! लेकिन मैं हाल ही में यह बहुत कामगार के साथ काम कर रहा था। यदि आपने इस php ढांचे पर ठोकर नहीं खाई है, तो आप बेहतर तरीके से इसकी जाँच करेंगे!
खैर, वर्कमैन एक अतुल्यकालिक घटना संचालित PHP फ्रेमवर्क है जो आसानी से तेजी से, स्केलेबल नेटवर्क अनुप्रयोगों के निर्माण के लिए है। (मैं सिर्फ उनकी वेबसाइट hahahah http://www.workerman.net/en/ से कॉपी और पेस्ट किया गया )
इसे समझाने का आसान तरीका यह है कि जब यह वेब सॉकेट प्रोग्रामिंग की बात आती है, तो आपको अपने सर्वर या लोकल सर्वर (जहाँ भी आप काम कर रहे हैं) में 2 फाइलें रखनी होंगी।
server.php (स्रोत कोड जो ग्राहक के सभी अनुरोधों का जवाब देगा)
client.php / client.html (स्रोत कोड जो अनुरोधित सामान करेगा)
तो बुनियादी तौर पर, आप सही कोड पहले आप पर server.php और सर्वर शुरू करते हैं। आम तौर पर, जैसा कि मैं विंडोज़ का उपयोग कर रहा हूं जो अधिक संघर्ष जोड़ता है, मैं इस कमांड के माध्यम से सर्वर चलाता हूं -> php server.php start
वैसे अगर आप xampp का उपयोग कर रहे हैं। यहाँ यह करने का एक तरीका है। आप जहां भी अपनी फाइलें रखना चाहते हैं, वहां जाएं। हमारे मामले में, हम फ़ाइलों को डालने जा रहे हैं
सी: /xampp/htdocs/websocket/server.php
C: /xampp/htdocs/websocket/client.php या client.html
यह मानते हुए कि आपके पास पहले से ही वे फाइलें आपके स्थानीय सर्वर में हैं। अपना गिट बैश या कमांड लाइन या टर्मिनल खोलें या जो भी आप उपयोग कर रहे हैं और यहां php पुस्तकालयों को डाउनलोड करें।
https://github.com/walkor/Workerman
https://github.com/walkor/phpsocket.io
मैं आमतौर पर संगीतकार के माध्यम से इसे डाउनलोड करता हूं और बस उन फाइलों को अपनी php स्क्रिप्ट में देखता हूं।
और यह भी एक की जाँच करें। यह वास्तव में महत्वपूर्ण है ! जब आप इसे चलाते हैं तो आपको server.php के साथ संवाद करने के लिए क्लाइंट.php या client.html के लिए इस जावास्क्रिप्ट लिबरी की आवश्यकता होती है।
https://github.com/walkor/phpsocket.io/tree/master/examples/chat/public/socket.io-client
मैं सिर्फ उस सॉकेट को कॉपी और पेस्ट करता हूं। मेरे क्लाइंट के रूप में उसी स्तर पर क्लाइंट-फ़ोल्डर और मेरा क्लाइंट। एफपी।
यहाँ server.php sourcecode है
<?php
require __DIR__ . '/vendor/autoload.php';
use Workerman\Worker;
use PHPSocketIO\SocketIO;
// listen port 2021 for socket.io client
$io = new SocketIO(2021);
$io->on('connection', function($socket)use($io){
$socket->on('send message', function($msg)use($io){
$io->emit('new message', $msg);
});
});
Worker::runAll();
और यहाँ client.php या client.html sourcecode है
<!DOCTYPE html>
<html>
<head>
<title>Chat</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div id="chat-messages" style="overflow-y: scroll; height: 100px; "></div>
<input type="text" class="message">
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="socket.io-client/socket.io.js"></script>
<script>
var socket = io.connect("ws://127.0.0.1:2021");
$('.message').on('change', function(){
socket.emit('send message', $(this).val());
$(this).val('');
});
socket.on('new message', function(data){
$('#chat-messages').append('<p>' + data +'</p>');
});
</script>
</html>
एक बार फिर, अपनी कमांड लाइन या गेट बैश या टर्मिनल खोलें जहाँ आप अपना सर्वर डालते हैं। फाइल। तो हमारे मामले में, वह है C: / xampp / htdocs / websocket / और php server.php में टाइप करें और एन्टर प्रेस करें।
फिर आप ब्राउजर पर जाएं और अपनी साइट पर जाने के लिए http: //localhost/websocket/client.php टाइप करें। फिर बस उस टेक्स्टबॉक्स में कुछ भी टाइप करें और आपको चलते-फिरते एक बेसिक php websocket दिखाई देगा!
बस आपको याद रखने की जरूरत है। वेब सॉकेट प्रोग्रामिंग में, इसे बस एक सर्वर और एक क्लाइंट की आवश्यकता होती है। पहले सर्वर कोड चलाएं और क्लाइंट कोड खोलें। आखिर तुमने इसे हासिल कर ही लिया है! उम्मीद है की यह मदद करेगा!