失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > php url参数过滤器 使用php://filter时向流过滤器添加过滤器参数

php url参数过滤器 使用php://filter时向流过滤器添加过滤器参数

时间:2024-05-31 03:39:45

相关推荐

php url参数过滤器 使用php://filter时向流过滤器添加过滤器参数

我有一个二进制文件,我想转换成标准的符合mime的base64字符串。我想我可以用

php://filter

方法来过滤流,但我对如何设置“line-length”参数感到困惑。还有其他一些方法也可以达到类似的效果,但我正在尝试找出是否:

如果甚至可以/允许使用uri样式方法为流过滤器设置参数。

如果可能,如何完成。

以下是迄今为止我所掌握的拼图片段:

很明显,我可以停止幻想,简单地说:

$binary = "path/to/binary.file";

$mime = file_get_contents($binary);

$mime = base64_encode($mime);

$mime = chunk_split($mime);

或者,我可以使用

php://过滤器

没有的方法

line-length

参数,然后拆分:

$binary = "path/to/binary.file";

$mime = file_get_contents("php://filter/read=convert.base64-encode/resource=$binary");

$mime = chunk_split($mime);

或者,我可以用

fopen

结合

stream_filter_append

完全不使用URL样式(如

Conversion Filters

手动):

$binary = "path/to/binary.file";

$param = array('line-length' => 76, 'line-break-chars' => "\r\n");

$fp = fopen($binary, 'r');

stream_filter_append($fp, 'convert.base64-encode',null, $param);

$mime = fread($fp, filesize($binary));

fclose($fp);

所以上面所有的结果都是一样的,但没有一个是我所希望的,那就是增加

线条长度

流的同一URL中的参数。可能是这样的:

$mime = file_get_contents("php://filter/read=convert.base64-encode:line-length=76/resource=$binary");

我想问题是当

流过滤器附加

使用。

那么有人知道我想要的能不能实现吗?

如果觉得《php url参数过滤器 使用php://filter时向流过滤器添加过滤器参数》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。