Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP ActiveX) Socket Send and Receive BinDataDemonstrates the Chilkat Socket ReceiveBdN and SendBd methods.
<?php // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.Socket') $sock = new COM("Chilkat.Socket"); // -------------------------------------------------------------------- // This example uses the public TCP echo service at https://tcpbin.com/ // -------------------------------------------------------------------- $useTls = 0; $port = 4242; $maxWaitMs = 5000; $success = $sock->Connect('tcpbin.com',$port,$useTls,$maxWaitMs); if ($success == 0) { print $sock->LastErrorText . "\n"; exit; } // Wait a max of 2 seconds for a response.. $sock->MaxReadIdleMs = 2000; // Send 26 bytes contained in a Chilkat BinData // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.BinData') $bdToSend = new COM("Chilkat.BinData"); $i = 0; $byteVal = 65; while ($i < 26) { $bdToSend->AppendByte($byteVal); $byteVal = $byteVal + 1; $i = $i + 1; } // Send the contents of the BinData // Pass zero's in the 2nd and 3rd arguments to send the entire contents of the BinData. $sock->SendBd($bdToSend,0,0); // The tcpbin.com echo server only echoes after receiving an LF (linefeed char) $sock->SendByte(10); // The echo server will echo back whatever is sent to it. // We should be able to read the same bytes back.. // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.BinData') $bdRecv = new COM("Chilkat.BinData"); // Receive the 26 bytes previously sent, plus the LF char. $success = $sock->ReceiveBdN(27,$bdRecv); if ($success == 0) { print $sock->LastErrorText . "\n"; exit; } // Show the contents of bdRecv in hex format print $bdRecv->getEncoded('hex') . "\n"; // Output: 4142434445464748494A4B4C4D4E4F505152535455565758595A0A ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.