Получение ошибки: вызов неопределенной функции dio_fcntl () для шлюза OBD

Здесь я хочу реализовать шлюз OBD в php v7.0. Для этого я использовал https://github.com/mdlayher/obd библиотека. В этой библиотеке есть одна функция dio_fcntl() используется, и я получаю ошибку и не могу ее использовать. Я также включаю расширение php_dio из файла php.ini. Тем не менее я получил фатальную ошибку, как показано ниже.

Msgstr «Неустранимая ошибка: вызов неопределённой функции serial \ dio_fcntl ()».

ошибка

public function __construct($device, $flags = 02)
{
// Attempt to set device...
if (!$this->set_device($device))
{
throw new \Exception("Unable to set device for serial connection");
}

// Check if Direct IO extension installed
if (!function_exists("dio_open"))
{
throw new \Exception("PHP Direct IO is not installed, cannot open serial connection!");
}

// $device : /dev/pts/ELM327
// Create direct IO file handle with specified flags
$this->serial = dio_open("C:/wamp/www/obd-master/".$device, $flags);

// Set synchronous IO
dio_fcntl($this->serial, F_SETFL, O_SYNC);

// Set options default
$options = array(
"baud" => self::DEFAULT_BAUD,
"bits" => self::DEFAULT_BITS,
"stop" => self::DEFAULT_STOP,
"parity" => self::DEFAULT_PARITY,
);
$this->set_options($options);

return;
}

Может кто-нибудь, пожалуйста, помогите мне разобраться?

1

Решение

Посмотрите на документацию по PHP, она говорит вам на http://php.net/dio-fcntl что этот метод недоступен в системах Windows.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]