public function dump(array $options = array())
    {
        foreach (array('graph', 'node', 'edge', 'node.instance', 'node.definition', 'node.missing') as $key) {
            if (isset($options[$key])) {
                $this->options[$key] = array_merge($this->options[$key], $options[$key]);
            }
        }

        $this->nodes = $this->findNodes();

        $this->edges = array();
        foreach ($this->container->getDefinitions() as $id => $definition) {
            $this->edges[$id] = array_merge(
                $this->findEdges($id, $definition->getArguments(), true, ''),
                $this->findEdges($id, $definition->getProperties(), false, '')
            );

            foreach ($definition->getMethodCalls() as $call) {
                $this->edges[$id] = array_merge(
                    $this->edges[$id],
                    $this->findEdges($id, $call[1], false, $call[0].'()')
                );
            }
        }

        return $this->container->resolveEnvPlaceholders($this->startDot().$this->addNodes().$this->addEdges().$this->endDot(), '__ENV_%s__');
    }
public function dump(array $options = array())
    {
        foreach (array('graph', 'node', 'edge', 'node.instance', 'node.definition', 'node.missing') as $key) {
            if (isset($options[$key])) {
                $this->options[$key] = array_merge($this->options[$key], $options[$key]);
            }
        }

        $this->nodes = $this->findNodes();

        $this->edges = array();
        foreach ($this->container->getDefinitions() as $id => $definition) {
            $this->edges[$id] = array_merge(
                $this->findEdges($id, $definition->getArguments(), true, ''),
                $this->findEdges($id, $definition->getProperties(), false, '')
            );

            foreach ($definition->getMethodCalls() as $call) {
                $this->edges[$id] = array_merge(
                    $this->edges[$id],
                    $this->findEdges($id, $call[1], false, $call[0].'()')
                );
            }
        }

        return $this->container->resolveEnvPlaceholders($this->startDot().$this->addNodes().$this->addEdges().$this->endDot(), '__ENV_%s__');
    }
public function dump ( array $ options = array ( ) ) { foreach ( array ( 'graph' , 'node' , 'edge' , 'node.instance' , 'node.definition' , 'node.missing' ) as $ key ) { if ( isset ( $ options [ $ key ] ) ) { $ this -> options [ $ key ] = array_merge ( $ this -> options [ $ key ] , $ options [ $ key ] ) ; } } $ this -> nodes = $ this -> findNodes ( ) ; $ this -> edges = array ( ) ; foreach ( $ this -> container -> getDefinitions ( ) as $ id => $ definition ) { $ this -> edges [ $ id ] = array_merge ( $ this -> findEdges ( $ id , $ definition -> getArguments ( ) , true , '' ) , $ this -> findEdges ( $ id , $ definition -> getProperties ( ) , false , '' ) ) ; foreach ( $ definition -> getMethodCalls ( ) as $ call ) { $ this -> edges [ $ id ] = array_merge ( $ this -> edges [ $ id ] , $ this -> findEdges ( $ id , $ call [ 1 ] , false , $ call [ 0 ] . '()' ) ) ; } } return $ this -> container -> resolveEnvPlaceholders ( $ this -> startDot ( ) . $ this -> addNodes ( ) . $ this -> addEdges ( ) . $ this -> endDot ( ) , '__ENV_%s__' ) ; }
Dumps the service container as a graphviz graph.

Available options:

* graph: The default options for the whole graph
* node: The default options for nodes
* edge: The default options for edges
* node.instance: The default options for services that are defined directly by object instances
* node.definition: The default options for services that are defined via service definition instances
* node.missing: The default options for missing services

@return string The dot representation of the service container
Dumps the service container as a graphviz graph .