我花了将近一天的时间,但没有成功。
我想要做的是,我有一个二进制文件“data.dat”
我想阅读文件内容并以文本格式输出,例如php中的“data.txt”。
我尝试了解压缩php的功能,但需要提到的类型作为第一个参数(可能是我错了,新的php)。
$data = fread($file, 4); // 4 is the byte size of a whole on a 32-bit PC.
$content= unpack("C", $data); //C for unsigned charecter , i for int and so on...
但是,如果我不知道在哪个地方,我正在阅读的文件中存储了什么类型的数据呢?
由于类型的原因,这个功能限制了我。
我想要类似于此的东西
$content= unpack("s", $data); //where s can denote to string
感谢。
答案 0 :(得分:3)
PHP没有"二进制"类型。二进制数据存储在字符串中。如果从文件中读取二进制数据,则它已经存储为字符串。您无需将其转换为字符串。
如果二进制数据已经以某种标准编码表示文本,则您不需要执行任何操作,因为您已经拥有有效的字符串。如果二进制数据代表某种编码,你需要知道你需要做什么,我们不知道。