Skip to content

Run the PHP code in the browser. - 在浏览器中运行 PHP 代码。

License

Notifications You must be signed in to change notification settings

guanguans/laravel-code-runner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

laravel-code-runner

ENGLISH | 简体中文

Run the PHP code in the browser. - 在浏览器中运行 PHP 代码。

tests check & fix styling codecov Latest Stable Version GitHub release (latest by date) Total Downloads License

Requirement

  • PHP >= 7.4
  • Laravel >= 7.0

Installation

You can install the package via composer.

composer require guanguans/laravel-code-runner --prefer-dist -vvv

You must publish the assets from this package by running this command.

php artisan code-runner:install

You can publish the config file of the package(optional).

php artisan vendor:publish --provider="Guanguans\LaravelCodeRunner\CodeRunnerServiceProvider" --tag="code-runner-config"

Usage

By default this package will only run in a local environment.

Visit /code-runner in your app to view page.

Authorization

Should you want to run this in another environment (we do not recommend this), there are two steps you must perform.

  1. You must set the enabled variable in the code-runner config file to true.

  2. You must register a view-code-runner ability. A good place to do this is in the AuthServiceProvider that ships with Laravel.

use Illuminate\Contracts\Auth\Authenticatable;

public function boot()
{
    $this->registerPolicies();

    Gate::define('view-code-runner', function (?Authenticatable $user = null) {
        // Return true if access to web tinker is allowed. Here's an example:
        return $user && in_array($user->email, [
            'admin@example.com',
        ]);
    });
}

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.