plugowski / php_sandbox
Simple sandbox to quick evaluation php code.
Requires
- php: >=5.6
- bootstrap-select/bootstrap-select: 1.9.4
- components/jquery: 2.2.*
- composer/composer: 1.4.2
- ebernhardson/fastcgi: 0.2.*
- fortawesome/font-awesome: 4.*
- kint-php/kint: 2.*
- makeusabrew/bootbox: dev-master
- plugowski/php_router: 1.0
- robintail/ace-builds: 1.2.*
Requires (Dev)
- phpunit/phpunit: 4.8.9
This package is not auto-updated.
Last update: 2025-01-05 10:54:06 UTC
README
Simple and usefull tool to execute custom php scripts. It allows to block specified function to increase security.
Screenshot
Installation
Clone that repository wherever you want (in my example /www/php_sandbox
)
$ git clone git@github.com:plugowski/php_sandbox.git
$ cd php_sandbox
and load all dependencies via composer:
$ composer install
The final step is to run docker using docker-compose commands (of course the first step is to install docker for your environment.
$ docker-compose build
$ docker-compose up -d
Now you have working docker, go to your favourite browser and hit that addres:
localhost:8080
Voila!
Usage
Just type some code and push Evaluate
button or use keyboard shortcut on Mac Command+Enter
or Ctrl+Enter
on Windows.
More shortcuts you can find here.
Changed shortcuts by me:
Changelog
- 1.4
- docker! Now you can use Sandbox with containers and don't be afraid about lost data from computer while use dangerous functions
- multi php now uses fastcgi to evaluate php scripts, no shel_exec anymore :)
- small refactoring
- new Kint for debugging
- 1.3
- added library manager, now you are able to add external libraries from packagist, and use it in sandbox directly
- 1.2
- fixed counting of memory used by script (now it is counting only for evaluated script without extra stuff from bootstrap)
- added new PhpStorm shortcut
- changed routing from FatFree to my own (FatFree fired couple ini_sets which might conflict with security settings, where ini_set() function will be disabled)
- added snippets, which you can save and load in any time
- added possibility to switch between couple of php versions
- 1.1
- added Kint debug tool for dumping varialbles
- refactored Config class
- 1.0
- Initial release
- visual editor based on ace
- simple benchmarking (count memory usage, memory peak and execution time)
- "last load" option
Licence
That code is licenced under New BSD License.
Credits
To build that tool I used:
- Kint - http://raveren.github.io/kint/
- Ace Editor - https://ace.c9.io/
- Bootstrap - https://getbootstrap.com/
- FontAwesome - http://fortawesome.github.io/Font-Awesome/
- jQuery - https://jquery.com/