1. Go to this page and download the library: Download hkwak/phpgen 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/ */
hkwak / phpgen example snippets
// 1. Creating some properties
$nameProperty = (new PropertyModel('name', 'string', AccessEnum::PROTECTED()))
->setDescription('The name of something')
->setDefaultValue('Default name');
$dobProperty = new PropertyModel('dob', 'string', AccessEnum::PROTECTED());
// 2. Creating the public setName method
// initializing the method body
$methodBody = '$this->name = $name;';
$setNameMethod =(new MethodModel('setName'))
->setAccess(AccessEnum::PUBLIC())
->setDescription('This is a method description')
->setReturn('self')
->addParameter(new ParameterModel('name', 'string'))
->addThrows(InvalidArgumentException::class)
->setBody($methodBody);
$classModel = (new ClassModel('TestClass'))
->addTrait(SomeTrait::class)
->addProperty($nameProperty)
->addProperty($dobProperty)
->addMethod($setNameMethod)
->addAnnotation('some Class Annotation')
->setDescription('This is a description of the class')
->setNamespace('\\Some\Namespace\\')
->addUse('\\Some\\Namespace\\Class')
->addUse('\\Some\\Namespace\\Class2')
->setExtends('\\Some\\Namespace\\BaseClass');
// generating the code
$classGenerator = new ClassGenerator(
new MethodGenerator(),
new PropertyGenerator(),
new NamespaceManager()
);
$classCode = $classGenerator->generate($classModel, new PhpCodeStream());
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.