PHP code example of localheinz / classy
1. Go to this page and download the library: Download localheinz/classy 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/ */
localheinz / classy example snippets
declare(strict_types=1);
use Ergebnis\Classy;
$source = Classy\Source::fromString(<<<'PHP'
namespace Example;
class Foo {}
enum Bar {}
interface Baz {}
trait Qux {}
PHP);
$collector = new Classy\Collector\TokenGetAllConstructFromSourceCollector();
$constructs = $collector->collectFromSource($source);
foreach ($constructs as $construct) {
/** @var Classy\Construct $construct */
echo sprintf(
"- %s (%s)\n",
$construct->name()->toString(),
$construct->type()->toString(),
);
}
// - Example\Foo (class)
// - Example\Bar (enum)
// - Example\Baz (interface)
// - Example\Qux (trait)
declare(strict_types=1);
use Ergebnis\Classy;
$source = Classy\Source::fromString(<<<'PHP'
namespace Example;
class Foo {}
enum Bar {}
interface Baz {}
trait Qux {}
PHP);
$collector = new Classy\Collector\PhpTokenTokenizeConstructFromSourceCollector();
$constructs = $collector->collectFromSource($source);
foreach ($constructs as $construct) {
/** @var Classy\Construct $construct */
echo sprintf(
"- %s (%s)\n",
$construct->name()->toString(),
$construct->type()->toString(),
);
}
// - Example\Foo (class)
// - Example\Bar (enum)
// - Example\Baz (interface)
// - Example\Qux (trait)
declare(strict_types=1);
use Ergebnis\Classy;
$filePath = Classy\FilePath::fromString(__DIR__ . '/example.php');
$collector = new Classy\Collector\DefaultConstructFromFilePathCollector(new Classy\Collector\TokenGetAllConstructFromSourceCollector());
$constructs = $collector->collectFromFilePath($filePath);
foreach ($constructs as $construct) {
/** @var Classy\Construct $construct */
echo sprintf(
"- %s (%s)\n",
$construct->name()->toString(),
$construct->type()->toString(),
);
}
// - Example\Foo (class)
// - Example\Bar (enum)
// - Example\Baz (interface)
// - Example\Qux (trait)
declare(strict_types=1);
use Ergebnis\Classy;
$splFileInfo = new \SplFileInfo(__DIR__ . '/example.php');
$collector = new Classy\Collector\DefaultConstructFromSplFileInfoCollector(new Classy\Collector\TokenGetAllConstructFromSourceCollector());
$constructs = $collector->collectFromSplFileInfo($splFileInfo);
foreach ($constructs as $construct) {
/** @var Classy\Construct $construct */
echo sprintf(
"- %s (%s)\n",
$construct->name()->toString(),
$construct->type()->toString(),
);
}
// - Example\Foo (class)
// - Example\Bar (enum)
// - Example\Baz (interface)
// - Example\Qux (trait)
declare(strict_types=1);
use Ergebnis\Classy;
use Symfony\Component\Finder;
$finder = Finder\Finder::create()
->files()
->in(__DIR__ . '/src');
$collector = new Classy\Collector\DefaultConstructFromFinderCollector(new Classy\Collector\TokenGetAllConstructFromSourceCollector()));
$constructs = $collector->collectFromFinder($finder);
foreach ($constructs as $construct) {
/** @var Classy\Construct $construct */
echo sprintf(
"- %s (%s)\n",
$construct->name()->toString(),
$construct->type()->toString(),
);
}
// - Example\Foo (class)
// - Example\Bar (enum)
// - Example\Baz (interface)
// - Example\Qux (trait)