2017 © Pedro PelĂĄez
 

symfony-bundle psysh

A port of the PHP REPL PsySH for Symfony.

image

theofidry/psysh

A port of the PHP REPL PsySH for Symfony.

  • Monday, April 16, 2018
  • by theofidry
  • Repository
  • 7 Watchers
  • 83 Stars
  • 30 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 12 Forks
  • 3 Open issues
  • 17 Versions
  • 20 % Grown

The README.md

PsyshBundle

Package version Build Status Scrutinizer Code Quality License, (*1)

A bundle to use the php REPL PsySH with [Symfony][2]. Learn more at psysh.org and check out the Interactive Debugging in PHP talk from OSCON on Presentate., (*2)

What does it do exactly? * Loads PsySH with the application dependencies * Gives access to the following variables:, (*3)

Variable Description
$container Instance of Symfony ServiceContainer
$kernel Instance of Symfony Kernel
$parameters Instance of Symfony parameters

Aside from that it's the plain old PsySH! You can also customize it to add your own variables., (*4)

Documentation

  1. Install
  2. Usage
    1. PsySH as a debugger
    2. Reflect like a boss
    3. PsySH for breakpoints
  3. Customize PsySH
  4. Credits

Install

You can use Composer to install the bundle to your project:, (*5)

composer require --dev theofidry/psysh-bundle

Then, enable the bundle by updating your app/AppKernel.php file to enable the bundle:
(not needed on symfony 5, bundle is automaticaly registred in config/bundles.php), (*6)

<?php
// app/AppKernel.php

public function registerBundles()
{
    //...

    if (in_array($this->getEnvironment(), ['dev', 'test'])) {
        //...
        $bundles[] = new Fidry\PsyshBundle\PsyshBundle();
    }

    return $bundles;
}

Usage

# Symfony > 4.0
bin/console psysh

or, (*7)

use function psysh

class X
{
    function foo()
    {
        psysh(get_defined_vars(), $this);   // Debug with the current context
    }
}

PsySH Shell, (*8)

Go further., (*9)

Customize PsySH

Adding a custom command

Adding a custom command for PsySH is as simple as defining a service with psysh.command tag!, (*10)

services:
    my_psysh_command:
        class: Acme\Shell\MyCommand
        tags:
            - { name: psysh.command }

Or even simpler if you use Symfony 3.3+:, (*11)

services:
    _defaults:
        autoconfigure: true
        autowire: true
        public: false

    Acme\Shell\MyCommand: ~

PsyshBundle provides autoconfiguration for custom Psysh command services, as long as they inherit from Psy\Command\ReflectingCommand or Psy\Command\Command., (*12)

Adding custom variables

It is possible to add custom variables to the shell via configuration. Variables can be of any type, container parameters references (e.g. %kernel.debug%) or even services (prefixed with @, e.g. "@my_service")., (*13)

# app/config/config_dev.yml

psysh:
    variables:
        foo: bar
        router: "@router"
        some: [thing, else]
        debug: "%kernel.debug%"

Now if you run php app/console psysh and then ls, you will see the variables $foo, $router, $some and $debug, in addition to already defined variables:, (*14)

>>> ls
Variables: $foo, $router, $some, $debug...

Default variables are: - $container (the service container) - $kernel - $parameters (all container parameters) - $self (the PsySH shell itself), (*15)

Credits

This bundle is developed by Théo FIDRY. This project has been made possible thanks to:, (*16)

The Versions

16/04 2018

dev-master

9999999-dev

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

16/04 2018

v3.4.0

3.4.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

17/12 2017

v3.3.0

3.3.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

17/12 2017

dev-patch-1

dev-patch-1

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

24/11 2017

v3.2.1

3.2.1.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

13/07 2017

v3.2.0

3.2.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

06/05 2017

v3.1.0

3.1.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

03/12 2016

v3.0.1

3.0.1.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

25/11 2016

v3.0.0

3.0.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

23/04 2016

v2.0.2

2.0.2.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

09/03 2016

v2.0.1

2.0.1.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

21/02 2016

v2.0.0

2.0.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

17/09 2015

v1.1.2

1.1.2.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

16/09 2015

v1.1.1

1.1.1.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

13/08 2015

v1.1.0

1.1.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

14/07 2015

v1.0.0

1.0.0.0

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh

22/06 2015

v1.0.0-beta

1.0.0.0-beta

A port of the PHP REPL PsySH for Symfony.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adrian Palmer

console symfony shell interactive repl psysh