1. Go to this page and download the library: Download lukaszmakuch/text-generator 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/ */
use lukaszmakuch\TextGenerator\ClassBasedTextGenerator;
/* @var $textGenerator ClassBasedTextGenerator */
$textGenerator->addTextualRepresentationOf(
\DateTime::class,
"a DateTime object"
);
echo $textGenerator->getTextBasedOn(new \DateTime()); //"a DateTime object"
use lukaszmakuch\TextGenerator\ObjectToTextConverter;
class DateTimeTextPresenter extends ObjectToTextConverter
{
protected function getClassOfSupportedObjects()
{
return \DateTime::class;
}
protected function getTextBasedOnObject($object)
{
/* @var $object \DateTime */
return $object->format("It's " . $object->format("Y"));
}
}
$textGenerator = new DateTimeTextPresenter();
echo $textGenerator->getTextBasedOn(new \DateTime("2016-01-01")); //"It's 2016"
use lukaszmakuch\TextGenerator\TextGeneratorWithDefaultText;
use lukaszmakuch\TextGenerator\TextGenerator;
$textGenerator = new TextGeneratorWithDefaultText(
/* @var $actualGenerator TextGenerator */
$actualGenerator,
"default text if the input is not supported"
);
use lukaszmakuch\TextGenerator\NULLTextGenerator;
$textGenerator = NULLTextGenerator::getInstance();
$textGenerator->getTextBasedOn($anything); //an empty string
use lukaszmakuch\TextGenerator\StaticTextGenerator;
(new StaticTextGenerator("abc"))->getTextBasedOn("anything"); //abc
use lukaszmakuch\TextGenerator\SimpleTextGeneratorProxy;
use lukaszmakuch\TextGenerator\TextGenerator;
/* @var $actualGenerator TextGenerator */
$textGenerator = new SimpleTextGeneratorProxy();
$textGenerator->setActualGenerator(actualGenerator)
use lukaszmakuch\TextGenerator\SimpleTextGeneratorProxy;
use lukaszmakuch\TextGenerator\TextGenerator;
/* @var $dateTimeTextGenerator TextGenerator */
/* @var $someClassObjectsTextGenerator TextGenerator */
$textGenerator = new ClassBasedTextGeneratorProxy();
$textGenerator->registerActualGenerator(
\DateTime::class,
$dateTimeTextGenerator
);
$textGenerator->registerActualGenerator(
SomeClass::class,
$someClassObjectsTextGenerator
);
use lukaszmakuch\TextGenerator\TextGenerator;
use lukaszmakuch\TextGenerator\ChainOfTextGenerators;
$chain = (new ChainOfTextGenerators())
->add($ifThisGeneratorFails)
->add($thisOneIsUsed)
->add($andIfItFailsThenThisOneIsUsed);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.