phpcore

8.0.3 • Public • Published

PHPCore

Build Status

Minimal PHP core library for PHP environments.

Who would use this?

After getting started with Uniter and PHPRuntime, you might want only a subset of the standard PHP library. You can include PHPCore and then only expose the builtin functions, classes or constants you need.

var phpCore = require('phpcore');

phpCore.install({
    functionGroups: [
        function (internals) {
            return {
                'add_one_to': function (argReference) {
                    return internals.valueFactory.createInteger(argReference.getNative() + 1);
                }
            };
        }
    ],
    classes: {
        'TwentyOne': function () {
            function TwentyOne() {}

            TwentyOne.prototype.getIt = function () {
                return 21;
            };

            return TwentyOne;
        },
        'My\\Tools\\Worker': function () {
            function Worker() {}

            Worker.prototype.run = function () {
                console.log('running');
            };

            return Worker;
        }
    },
    constantGroups: [
        function (internals) {
            return {
                'MY_CONSTANT': 1000
            };
        }
    ]
});

phpCore.compile(
    // Example JS code transpiled from PHP by PHPToJS:
    function (core) {
        var add = core.add, callFunction = core.callFunction, createInteger = core.createInteger, getConstant = core.getConstant;
        return add(getConstant('MY_CONSTANT'), callFunction('add_one_to', [createInteger(21)]));
    }
)().execute().then(function (result) {
    console.log(result.getNative()); // Prints "1022"
});

Keeping up to date

Readme

Keywords

Package Sidebar

Install

npm i phpcore

Weekly Downloads

13

Version

8.0.3

License

MIT

Unpacked Size

4.23 MB

Total Files

683

Last publish

Collaborators

  • asmblah