1. Go to this page and download the library: Download j-ben87/parsley-bundle 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/ */
j-ben87 / parsley-bundle example snippets
declare(strict_types=1);
namespace App\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Validator\Constraints as Assert;
final class CustomType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('title', TextType::class, [
'constraints' => [
new Assert\NotBlank(),
new Assert\Length(30),
],
])
->add('content', TextareaType::class, [
'constraints' => [
new Assert\NotBlank(),
],
])
;
}
}
declare(strict_types=1);
namespace App\Model;
use Symfony\Component\Validator\Constraints as Assert;
final class User
{
/**
* @Assert\NotBlank()
* @Assert\Length(max=255)
*/
private ?string $username = null;
/**
* @Assert\NotBlank()
* @Assert\Length(max=255)
* @Assert\Email()
*/
private ?string $email = null;
}
declare(strict_types=1);
namespace App\Form\Type;
use App\Model\User;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
final class UserType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('username')
->add('email')
;
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefault('data_class', User::class);
}
}
declare(strict_types=1);
namespace App\Constraint\Constraints;
use JBen87\ParsleyBundle\Constraint\Constraint;
final class Valid extends Constraint
{
protected function getAttribute(): string
{
return 'data-parsley-valid';
}
protected function getValue(): string
{
return 'true';
}
}
declare(strict_types=1);
namespace App\Constraint\Factory;
use App\Constraint\Constraints as ParsleyAssert;
use JBen87\ParsleyBundle\Constraint\Constraint;
use JBen87\ParsleyBundle\Constraint\Factory\FactoryTrait;
use JBen87\ParsleyBundle\Constraint\Factory\TranslatableFactoryInterface;
use Symfony\Component\Validator\Constraint as SymfonyConstraint;
use Symfony\Component\Validator\Constraints as Assert;
final class ValidFactory implements TranslatableFactoryInterface
{
use FactoryTrait;
public function create(SymfonyConstraint $constraint): Constraint
{
/** @var Assert\Valid $constraint */
return new ParsleyAssert\Valid([
'message' => $this->trans($constraint->message),
]);
}
public function supports(SymfonyConstraint $constraint): bool
{
return $constraint instanceof Assert\Valid;
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.