z-engine
php-fuse
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
z-engine
-
Random shower thought I got: PhpStorm developers are Java developers who know PHP better than most PHP developers
There was an attempt... https://github.com/lisachenko/z-engine
-
RFC: Sealed classes
Operator overloading can technically be done in userspace via FFI with https://github.com/lisachenko/z-engine (I have an active PR adding headers for 7.4 and 8.1 as well as TS) - but it's super hacky and I would love to see it actually make it into PHP proper.
-
Operator Overloading RFC is in voting. What are your thoughts on this feature?
By the way, it's already possible using FFI and z-engine. I have a toy project using this: rikudou/units.
-
RFC: User Defined Operator Overloads
FYI: You can already do that using FFI and z-engine (which I just found out was open-sourced).
php-fuse
-
sj-i/php-fuse: PHP FFI bindings for libfuse. You can write your own filesystems in PHP.
The introduction of FFI in PHP was done with the reference to LuaJIT. As a result, FFI's CData is a completely dynamic type, similar to stdClass, and does not get proper support from the IDE or static analysis. For this reason, php-fuse has introduced a muddy mechanism to map CData to PHP classes. https://github.com/sj-i/php-fuse/tree/master/src/FFI It is a shame that CData is such a dynamic type since PHP nowadays is a language that easily benefits from static types, unlike Lua or Ruby. I'm hoping that I or someone else can come up with a better solution, such as allowing C types to be mapped to user-defined CData subclasses, as the idea was seen in the early discussions when FFI was introduced. https://externals.io/message/102036#102050
What are some alternatives?
reli-prof - A sampling profiler or a memory profiler for PHP written in PHP, which reads information about running PHP VM from outside the process. You can find performance bottlenecks or memory leaks of your scripts without changing the target script or loading extensions.
libfuse - The reference implementation of the Linux FUSE (Filesystem in Userspace) interface
user-documentation - Documentation for those that use HHVM and write Hack code.
php-ffi - PHP Foreign Function Interface
laminas-code - Extensions to the PHP Reflection API, static code scanning, and code generation
phpstorm-stubs - PHP runtime & extensions header files for PhpStorm
PHP OAuth 2.0 Server - A spec compliant, secure by default PHP OAuth 2.0 Server
php-iup - php binding for IUP toolkit
PHPT - The PHP Interpreter
Symfony - The Symfony PHP framework
Package