快速入門

一、檢查環境是否支持OHSCE

繫統:Windows / Linux / OSX

          建議:WINDOWSSERVER2008及以上 UbuntuServer 14.04LTS及以上

PHP :5.3及以上

          建議PHP5.4及以上

PHP擴展:

           Socket,Shmop,Curl

二、修改配置文件

           /config/oibc_sce_config.php

三、運行測試程序

3.1工作在以太網上

一箇TCP 服務端測試程序:


<?php
ini_set('memory_limit',"88M");//重置php可以使用的內存大小爲64M
set_time_limit(0);
ob_implicit_flush(1);
i n c l u d e('loadohsce.php');
$trya='ohsce_server_Example ';
function example(&$socket
,$buf,$len,$zv){  //收到數據時的迴調函數
	global $trya;
	echo $buf;
	Ohsce_socketwrite($socket,$trya.'hi '.$buf);
	return true;
}
function exampleaccept(&$socket,$ip,$port,$zv){  //新客戶端到訪時的迴調函數
	global $trya;
	Ohsce_socketwrite($socket,$trya.'Welcome'.$ip.':'.$port);
	return true;
}
Ohsce_eng_socket_server($ohsceserver,'tcp',7626,'127.0.0.1','example','exampleaccept');//創建一箇TCP服務端資源 綁定127.0.0.1:7626 併傳入迴調函數
Ohsce_eng_socket_server_runtcp($ohsceserver); //開始運行

對應的客戶端測試程序:



<?php
ini_set('memory_limit',"88M");//重置php可以使用的內存大小爲64M
set_time_limit(0);
ob_implicit_flush(1);
i n c l u d e('loadohsce.php');
Ohsce_eng_socket_client($ohsceclient,'tcp',7626,'127.0.0.1'); //創建一箇TCP客戶端資源併連接27.0.0.1:7626
echo Ohsce_socketread($ohsceclient['socket'],1024)[1]; //收取歡迎信息
Ohsce_socketsend($ohsceclient['socket'],'hello');  //髮送數據
echo Ohsce_socketread($ohsceclient['socket'],1024)[1]; //收取回覆數據
sleep(30);

UDP :

udpserver.php


<?php
ini_set('memory_limit',"88M");//重置php可以使用的內存大小爲88M
set_time_limit(0);
ob_implicit_flush(1);
i n c l u d e('loadohsce.php');
$trya='ohsce_server_Example ';
function example(&$socket,$buf,$from,$port,$zv){  //收到數據時的迴調函數
	global $trya;
	echo $buf;
	 Ohsce_socketsend($socket,$trya.'hi '.$buf,0,0,$from,$port);
	return true;
}
Ohsce_eng_socket_server($ohsceserver,'udp',7626,'127.0.0.1','example');//創建一箇TCP服務端資源 綁定127.0.0.1:7626 併傳入迴調函數
@Ohsce_eng_socket_server_runudp($ohsceserver); //開始運行
UDPCLIENT:



<?php
ini_set('memory_limit',"88M");//重置php可以使用的內存大小爲64M
set_time_limit(0);
ob_implicit_flush(1);
i n c l u d e('loadohsce.php');
Ohsce_eng_socket_client($ohsceclient,'udp',7628); //創建一箇TCP客戶端資源併連接27.0.0.1:7626
Ohsce_socketsend($ohsceclient['socket'],'hello',0,0,'127.0.0.1',7626);
Ohsce_socketrecvfrom($ohsceclient['socket'],$buf,0,0,$from,$port); //收取回覆數據
echo $buf.'|'.$from.':'.$port;
sleep(30);


3.2工作在工業自動化現場控製網絡上


操作串口RS232 /485測試程序:


<?php
ini_set('memory_limit',"88M");//重置php可以使用的內存大小爲64M
set_time_limit(0);
ob_implicit_flush(1);
i n c l u d e('loadohsce.php');
Ohsce_eng_serial_creat($hscecom,"com7"); //OHSCE會默認爲你創建一箇 9600,n,8,1 寫讀的串口資源
Ohsce_eng_serial_open($hscecom); //一旦通過該函數成功開啟瞭串口,此串口就被OHSCE進程佔用瞭 此時串口資源變爲可用狀態
Ohsce_eng_serial_write($hscecom,"01030001000415c9",true);//曏串口設備髮送數據 以16進製髮送
Ohsce_eng_serial_read($hscecom,$data,null,true); // 讀取串口數據 返迴數據長度爲未知 以16進製返迴
echo $data; //輸齣數據
sleep(30);


3.3測試使用OHSCE的進程守護

我們先寫一箇無用的自殺進程


<?php
sleep(60);
exit;

編寫OHSCE-PCENTER入口文件:


<?php
$ohsce_pcenter_pr_name='測試';
$ohsce_pcenter_pr_prun='\pexample.php';
$ohsce_pcenter_memmorykey=6901;//註意 不得與生成器衝突,否則請提前註冊。


啟動併守護這箇進程


正式運行使用隱藏窗口模式。

不斷完善中,感謝支持。

    關鍵字