>백엔드 개발 >PHP 튜토리얼 >怎样用PHP读取TXT文件第一行的两个字符进行数学运算并输出呢

怎样用PHP读取TXT文件第一行的两个字符进行数学运算并输出呢

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-20 12:25:35984검색

假如TXT文件第一行的16进制数据为:AA C0 ED 00 8A 01 BA 09 3B AB 

怎样用PHP读取第三个字符ED和第四个字符00 

并将它们转换成十进制并进行数学运算

运算公式为:(OO*256+ED)/10 

将运算结果显示在页面上


回复讨论(解决方案)

//假定数据以读取到变量 $s$s = 'AA C0 ED 00 8A 01 BA 09 3B AB';$a = explode(' ', $s);echo (hexdec($a[3]) * 256 + hexdec($a[2])) / 10;
23.7

怎样让它一直读取第一行的数据呢

不知道你在说什么

因为这个txt文件每秒会增加一行,所以我想让他循环读取第一行的数据

$handle = @fopen("/tmp/inputfile.txt", "r");
if ($handle) {
    while (!feof($handle)) {
        $buffer = fgets($handle, 4096);
        echo $buffer;
    }
    fclose($handle);
}

按行读取 另外,获取指定位置的字符 可以用 strpos

不好意思 弄错了 应该用 substr

<?php$file = 'abc.txt';$content = file_get_contents($file);$data1 = hexdec(ord(substr($content,3,1)));$data2 = hexdec(ord(substr($content,4,1)));echo (($data2*256)+$data1)/10;?>

因为这个txt文件每秒会增加一行,所以我想让他循环读取第一行的数据



每秒增加一行,第一行的数据也不会变吧。

txt一直增加,是不是想要读取最后一行

看错了 txt文件每秒会增加一行是在最底行增加的 那么怎样实现读取最后一行的数据,并且每隔5秒执行一次读取呢 因为要再页面上显示动态的效果

只读最后一行:$txt = array_pop(file('文件名'));

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.