PHP套接字错误连接设备

时间:2013-11-10 01:50:45

标签: php sockets device

我有一台带有TCP / IP端口的ZK F7考勤机,它通过附带的软件返回数据。但我想通过php使用数组中的php socket收集考勤数据,然后将它们保存在mysql中。为了做到这一点,我尝试了下面的代码,但得到错误(调用未定义的函数socket_create())。什么应该解决错误?

<?php

// Server IP address
$address = "192.168.1.201";

// Port to listen
$port = 4370;

$mysock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_bind($mysock,$address, $port) or die('Could not bind to address');
socket_listen($mysock, 5);
$client = socket_accept($mysock);

// read 1024 bytes from client
$input = socket_read($client, 1024);

// write received gprs data to the file
writeToFile('socketLog.txt', $input);

socket_close($client);
socket_close($mysock);

function writeToFile($strFilename, $strText) {
    if($fp = @fopen($strFilename,"w")) {
        $contents = fwrite($fp, $strText);
        fclose($fp);
        return true;
    } else {
        return false;
    }
}
?>

2 个答案:

答案 0 :(得分:1)

您没有启用php_sockets扩展程序。在php.ini中执行此操作

答案 1 :(得分:0)

更改行

$mysock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

$mysock = socket_create(AF_INET, SOCK_DGRAM, 0);

我想通过使用UDP连接到ZK设备可以解决这个问题。