PHP code example of eventpoints / composer-json-parser

1. Go to this page and download the library: Download eventpoints/composer-json-parser library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

eventpoints / composer-json-parser example snippets


public function someMethod() : void 
{
    // This will extract the composer.json file data return a (Composer)[https://github.com/eventpoints/composer-json-parser/blob/main/src/Model/Composer.php] object 
    $composer = (new ParserFacade())->extract();
}

public function someMethod() : void 
{
    $composer = (new ParserFacade())->extract();
    $package = $composer->getRequires()->findFirst(fn(int $key, Package $package) => $package->getPackageVersion()->getVersion() > 8.0 );
    var_dump($package);
    
    //  object(ComposerJsonParser\Model\Package)#21 (3) {
    //  ["name":"ComposerJsonParser\Model\Package":private]=>
    //  string(3) "php"
    //  ["type":"ComposerJsonParser\Model\Package":private]=>
    //  enum(ComposerJsonParser\Enum\PackageTypeEnum::DEVELOPMENT)
    //  ["packageVersion":"ComposerJsonParser\Model\Package":private]=>
    //  object(ComposerJsonParser\Model\PackageVersion)#22 (2) {
    //    ["version"]=>
    //    float(8.2)
    //    ["versionConstraints"]=>
    //    string(1) "^"
    //  }
    // }
}

public function someMethod() : void 
{
    $composer = (new ParserFacade())->extract();
    $package = $composer->getPackageByName('rector/rector');
    var_dump($package);
                
    // object(ComposerJsonParser\Model\Package)#29 (3) {
    //  ["name":"ComposerJsonParser\Model\Package":private]=>
    //  string(13) "rector/rector"
    //  ["type":"ComposerJsonParser\Model\Package":private]=>
    //  enum(ComposerJsonParser\Enum\PackageTypeEnum::REQUIRE)
    //  ["packageVersion":"ComposerJsonParser\Model\Package":private]=>
    //  object(ComposerJsonParser\Model\PackageVersion)#30 (2) {
    //    ["version"]=>
    //    float(0.18)
    //    ["versionConstraints"]=>
    //    string(1) "^"
    //  }
    // }
}