1. Go to this page and download the library: Download daften/addressing-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/ */
daften / addressing-bundle example snippets
namespace App\Entity;
use App\Repository\InstallationAddressRepository;
use Daften\Bundle\AddressingBundle\Entity\AddressEmbeddable;
use Daften\Bundle\AddressingBundle\Validator\Constraints as AddressingBundleAssert;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: InstallationAddressRepository::class)]
class AddressExample
{
#[ORM\Embedded(class: AddressEmbeddable::class)]
#[AddressingBundleAssert\EmbeddedAddressFormatConstraint(fieldOverrides: [
'addressLine1' => ' {
$this->address = new AddressEmbeddable();
}
/**
* @return AddressEmbeddable
*/
public function getAddress()
{
return $this->address;
}
/**
* @param AddressEmbeddable $address
*/
public function setAddress($address): void
{
$this->address = $address;
}
}
namespace App\Form;
use App\Entity\AddressExample;
use Daften\Bundle\AddressingBundle\Form\Type\AddressEmbeddableType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
/**
* Class AddressExampleType
*/
class AddressExampleType extends AbstractType
{
/**
* {@inheritdoc}
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('address', AddressEmbeddableType::class, [
'allowed_countries' => [
'United States' => 'US',
'United Kingdom' => 'UK',
'Belgium' => 'BE',
],
'preferred_countries' => ['BE', 'US'],
'default_country' => 'US',
]);
}
/**
* {@inheritdoc}
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => AddressExample::class,
]);
}
}
namespace App\Form;
use App\Entity\AddressExample;
use Daften\Bundle\AddressingBundle\Form\Type\AddressEmbeddableGmapsAutocompleteType;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
/**
* Class AddressExampleType2
*/
class AddressExampleType2 extends AbstractType
{
/**
* {@inheritdoc}
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('address', AddressEmbeddableGmapsAutocompleteType::class, [
'label' => 'address',
'translation_domain' => 'address',
'allowed_countries' => [
'BE',
'NL',
],
]);
}
/**
* {@inheritdoc}
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => AddressExample::class,
]);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.