有個gps串口轉(zhuǎn)以太網(wǎng)的東西,這個以太口以tcp server的方式一直在發(fā)送包,格式是:所有語句均以“$”開頭,以<CR><LF>結(jié)束,<CR>為0x0D<LF>為0x0A。
我現(xiàn)在用php取這些數(shù)據(jù),一次取一行的數(shù)據(jù),問題是并不是每次都能取到“$”開頭的數(shù)據(jù),有的時候是從中間開始的,請問如何控制總是以“$”開頭?
舉例:
正常數(shù)據(jù)扔出來這樣:
$2SGGA,064324.00,3955.11933,N,11618.03183,E,G,07,1.3,50.6,M,0.0,M,,*68
$2SRMC,064324.00,A,3955.11933,N,11618.03183,E,0.0,322.5,310513,,,4*5C
$2SGGA,064325.00,3955.11933,N,11618.03185,E,G,07,1.3,50.5,M,0.0,M,,*6C
$2SRMC,064325.00,A,3955.11933,N,11618.03185,E,0.0,322.5,310513,,,4*5B
$2SGGA,064326.00,3955.11932,N,11618.03187,E,G,07,1.3,50.4,M,0.0,M,,*6D
$2SRMC,064326.00,A,3955.11932,N,11618.03187,E,0.0,322.5,310513,,,4*5B
$2SGGA,064327.00,3955.11932,N,11618.03187,E,G,07,1.3,50.4,M,0.0,M,,*6C
$2SRMC,064327.00,A,3955.11932,N,11618.03187,E,0.0,322.5,310513,,,4*5A
我想按照這種格式一行一行的取,但用php的socket_read取出來,有的時候是這樣的:
RMC,144641.00,A,3955.11757,N,11618.03404,E,0.0,0.0,310513,,,4*59 $2S
或者
07,1.3,49.3,M,0.0,M,,*61 $2SRMC,064703.00,A,3955.11939,N,11618.03137,
請問如何總能按照標準格式取?謝謝
|