PEAR Manual
Prev |  | Next

# PEAR_DependencyDB::getDependentPackageDependencies()

PEAR_DependencyDB::getDependentPackageDependencies() -- Get a list of the actual dependencies of installed packages that depend on a package.

## Synopsis

    require_once '/DependencyDB.php';

```array|false` PEAR_DependencyDB::getDependentPackageDependencies` (PEAR_PackageFile_v1|PEAR_PackageFile_v2|array &$pkg)`

## Description

This returns the complete tree of extended dependencies of a single installed package.

For instance, a real-world example. package SOAP depends on Mail_Mime, HTTP_Request, Net_URL, Net_DIME. package HTTP_Request depends on Net_URL, Net_Socket. This method will return an array similar to:

    <?php
    array(
        'pear.php.net' =>
            array(
                'mail_mime' =>
                    array('name' => 'Mail_Mime',
                          'channel' => 'pear.php.net'),
                'http_request' =>
                    array('name' => 'HTTP_Request',
                          'channel' => 'pear.php.net'),
                'net_url' =>
                    array('name' => 'Net_URL',
                          'channel' => 'pear.php.net',
                          'min' => '1.0.12'),
                'net_dime' =>
                    array('name' => 'Net_DIME',
                          'channel' => 'pear.php.net'),
                'net_socket' =>
                    array('name' => 'Net_Socket',
                          'channel' => 'pear.php.net'),
            ),
    );
    ?>

Note that this should not be relied upon for exact dependencies. In the example above, the returned dependency will be that of HTTP_Request upon Net_URL, which is stricter than SOAP's dependency upon Net_URL. In other words, if there are two similar dependencies, the last one encountered will be returned.

## Parameter

PEAR_PackageFile_v1|PEAR_PackageFile_v2|array `&$pkg`

  This parameter, if an array, should be in format:

      <?php
      array(
        'package' => 'packagename',
        'channel' => 'channelname'
      );
      ?>

## Throws

throws no exceptions thrown

## Note

This function can not be called statically.

Prev | Home | Next
PEAR_DependencyDB::getDependencies() | Up | PEAR_DependencyDB::getDependentPackages()