calcinai/php-mmap

PHP的mmap

v0.1.8 2016-08-01 09:05 UTC

This package is auto-updated.

Last update: 2024-09-22 08:47:26 UTC


README

这个库是C语言mmap的轻量级实现。在PHP的早期版本中,fopen在可能的情况下使用mmap,但看起来这个功能在5.3版本中被移除了。实际的映射委托给Python子进程以实现兼容性和可编译性。

这最初是另一个项目的组件,但作为一个独立的库它更有意义。它是同步操作的,但如果需要读取大量数据,可以分块进行。

我尽量使它功能上等同于C语言的实现,但由于一些限制,它并不完全相同。

我还编写了一个兼容的扩展php-ext-mmap,你可以编译并安装作为更快的替换方案。

配置

使用composer

  "require": {
  	"calcinai/php-mmap": "^0.1"
  }

使用方法

通过URI(类似的方式)

    $mmap = fopen('mmap:///dev/mem:1024?offset=0', 'rw');

通过包装方法

    $mmap = mmap_open('/dev/mem', 1024, 0);

你可以在流上使用fseek()fread()fwrite()。如果你有其他用途,请告诉我。