PHP 替换十六进制地址处的二进制文件
PHP Replace binary file at hex address
我想修改 aprox 的二进制文件服务器端。 700kb 更改其中的 url 而不是保存它。
我的第一个想法是用bin转十六进制,用preg_replace代替二进制的url。
url 的二进制地址始终相同,但每次调用我的函数时我都需要更改它。
有没有 better/faster 方法来做到这一点?
示例:
somesite.com/api***
例如,我想用 var 中的一些数字替换 ***。
*** 介于十六进制地址 00010edb-00010edd
谢谢!
如果字符串在固定位置,可以直接写入数据:
$position=hexdec("00010edb"); // You have to pre-calculate it once
$data="some data"; // Replacement
if ($f=fopen("your_file", "r+")) {
fseek($f, $position);
fwrite($f, $data);
fclose($f);
} else {
echo "Can't open file";
}
我想修改 aprox 的二进制文件服务器端。 700kb 更改其中的 url 而不是保存它。
我的第一个想法是用bin转十六进制,用preg_replace代替二进制的url。
url 的二进制地址始终相同,但每次调用我的函数时我都需要更改它。
有没有 better/faster 方法来做到这一点?
示例:
somesite.com/api***
例如,我想用 var 中的一些数字替换 ***。
*** 介于十六进制地址 00010edb-00010edd
谢谢!
如果字符串在固定位置,可以直接写入数据:
$position=hexdec("00010edb"); // You have to pre-calculate it once
$data="some data"; // Replacement
if ($f=fopen("your_file", "r+")) {
fseek($f, $position);
fwrite($f, $data);
fclose($f);
} else {
echo "Can't open file";
}