主要是想用PHP开发一个CTP交易系统 ,CTP的API使用C++写的,不知道用什么工具来通信,如果使用tcp服务,是不是要用C++去写?
有点乱,没有具体的思路,各路大牛,帮帮忙,提供下思路和工具哦,急求!
简单点 就是 PHP 跟其他语言(C++) API 通信的问题吧。
可以使用 http,tcp 都可以通信
看你是想用 HTTP 还是较为底层的 TCP、UDP 进行了。
HTTP 对于 PHP 这边只需会使用 cURL 就行,或者使用第三方库 Guzzle
。
如果是 TCP 或 UDP,先考虑你的两个服务之间通讯的复杂性,如果只是简单地发送数据然后接收(即作为客户端,C++ 那套作为服务端),可利用 PHP 的 stream_socket_client
,文档参考:http://php.net/manual/zh/func...
简单地连接发送和接收数据的代码:
$fp = stream_socket_client("tcp://10.1.7.122:27710", $errno, $errstr, 5);
// UDP 改一下 Schema 就好,如下:
// $fp = stream_socket_client("udp://10.1.7.122:27710", $errno, $errstr, 5);
if (!$fp) {
echo "$errstr ($errno)
\n";
} else {
fwrite($fp, pack("s", 666));
while (!feof($fp)) {
$recv .= fread($fp, 1024);
}
fclose($fp);
}
复杂点的,需要建立服务端的,可考虑 Swoole
或 Workerman