আমি জানি সংগ্রাম মানুষ! তবে সম্প্রতি আমি ওয়ার্কারম্যানের সাথে এটি বেশ কাজ করেছি। আপনি যদি এই পিএইচপি ফ্রেমওয়ার্কে হোঁচট খাচ্ছেন না তবে আপনি আরও ভাল করে এটি পরীক্ষা করে দেখুন!
ওয়েল, ওয়ার্কারম্যান সহজেই দ্রুত, স্কেলযোগ্য নেটওয়ার্ক অ্যাপ্লিকেশন তৈরির জন্য একটি অ্যাসিক্রোনাস ইভেন্ট চালিত পিএইচপি ফ্রেমওয়ার্ক। (আমি তাদের ওয়েবসাইট হাহাহাহা থেকে কেবল অনুলিপি করে আটকিয়েছি http://www.workerman.net/en/ )
এটি ব্যাখ্যা করার সহজ উপায় হ'ল এটি যখন ওয়েব সকেট প্রোগ্রামিং আসে তখন আপনার সার্ভারে বা স্থানীয় সার্ভারে (যেখানে আপনি যেখানেই কাজ করছেন) 2 ফাইল থাকা দরকার।
server.php (উত্স কোড যা সমস্ত ক্লায়েন্টের অনুরোধে সাড়া দেবে)
ক্লায়েন্ট.এফপি / ক্লায়েন্ট এইচটিএমএল (উত্স কোড যা অনুরোধকারী স্টাফগুলি করবে)
সুতরাং মূলত, আপনি প্রথমে কোডটি ডান আপনার সার্ভার.ফ্পে এবং সার্ভারটি শুরু করুন। সাধারণত, আমি উইন্ডোজগুলি ব্যবহার করি যা লড়াইয়ে আরও বেশি যোগ করে, আমি এই কমান্ডটির মাধ্যমে সার্ভারটি চালিত করি -> পিএইচপি সার্ভার
আচ্ছা আপনি যদি এক্সএএমপি ব্যবহার করেন। এটি করার একটি উপায় এখানে। আপনি যেখানে নিজের ফাইল রাখতে চান সেখানে যান। আমাদের ক্ষেত্রে, আমরা ফাইলগুলিতে রেখে যাচ্ছি
সি: /xampp/htdocs/websocket/server.php
সি: /xampp/htdocs/websocket/client.php বা ক্লায়েন্ট এইচটিএমএল
ধরে নিচ্ছি যে আপনার স্থানীয় সার্ভারে এই ফাইলগুলি ইতিমধ্যে রয়েছে। আপনার গিট বাশ বা কমান্ড লাইন বা টার্মিনাল খুলুন বা আপনি যে কোনও পিএইচপি লাইব্রেরি ব্যবহার করছেন এবং ডাউনলোড করুন।
https://github.com/walkor/Workerman
https://github.com/walkor/phpsocket.io
আমি এটি সাধারণত সুরকারের মাধ্যমে ডাউনলোড করি এবং আমার পিএইচপি স্ক্রিপ্টগুলিতে কেবল সেই ফাইলগুলি অটোল্যাড করি।
এবং এই এক পরীক্ষা করে দেখুন। এটি সত্যিই গুরুত্বপূর্ণ ! আপনার ক্লায়েন্ট.পিএইচপি বা ক্লায়েন্ট এইচটিএমএল এটি চালানোর সময় সার্ভার.ফ্পের সাথে যোগাযোগ করার জন্য আপনার এই জাভাস্ক্রিপ্ট লিবারি প্রয়োজন ।
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>
আবার, আপনার কমান্ড লাইনটি খুলুন বা গিট ব্যাশ বা টার্মিনাল যেখানে আপনি নিজের সার্ভার.ফ্প ফাইলটি রেখেছেন। সুতরাং আমাদের ক্ষেত্রে, এটি সি: / এক্সএএমপিএইচ / এইচটিডোকস / ওয়েবসকেট / এবং পিএইচপি সার্ভারে টাইপ করুন.এফপি শুরু করুন এবং এন্টার টিপুন।
তারপরে আপনার ব্রাউজারে যান এবং আপনার সাইটটি দেখতে http: //localhost/websket/client.php টাইপ করুন। তারপরে সেই পাঠ্যবক্সে কেবল কিছু টাইপ করুন এবং আপনি যেতে যেতে একটি বেসিক পিএইচপি ওয়েবসকেট দেখতে পাবেন!
আপনার শুধু মনে রাখা দরকার। ওয়েব সকেট প্রোগ্রামিংয়ে এটির জন্য কেবল একটি সার্ভার এবং ক্লায়েন্ট প্রয়োজন। প্রথমে সার্ভার কোডটি চালান এবং ক্লায়েন্ট কোডটি খুলুন। এবং সেখানে আপনি এটা আছে! আশাকরি এটা সাহায্য করবে!