2012-06-27 14 views
6

Sto cercando di seguire questa documentazione su Symfony: http://symfony.com/doc/current/book/forms.htmlSymfony2: Come rendere disponibile l'estensione php_intl per Symfony2?

ok ecco è il mio genere, ho esternalizzato la mia forma e ha creato una specifica classe di modulo per la gestione del processo e di essere in grado di riutilizzarlo.

Allora, cosa succederà quando ho inviato il modulo, qualunque sia l'informazioni sono a posto o no per la mia classe, ottengo questo errore fatale:

Fatal error: Call to a member function setAttribute() on a non-object in C:\Program Files (x86)\wamp\www\QNetworks\vendor\symfony\src\Symfony\Component\Form\Extension\Core\DataTransformer\NumberToLocalizedStringTransformer.php on line 130 Call Stack

Io corro con PHP 5.3.9 e la mia estensione Intl è installato e attivato MA quando faccio funzionare l'ordine app/check.php vedo:

[[WARNING]] Checking that the intl extension is available: FAILED

* Install and enable the intl extension (used for validators) *

Quindi non capisco quale sia il problema con questa estensione. Dovrei reinstallarlo? quando vado qui: http://php.net/manual/en/intl.requirements.php vedo tht posso installare il PECL o la libreria ICU, ma non so se mi conviene, e se non v'è alcuna relazione con il mio problema ..

+0

Ho avuto lo stesso problema sul server di wamp con php versione 5.3.8. Fortunatamente disattivare l'estensione intl ha funzionato per me. È una soluzione alternativa piuttosto che una soluzione, ma è veloce e aiuta. –

risposta

3

tua estensione Intl deve essere configurato in modo appropriato. Controllo sul server se questo veramente attivato utilizzando phpinfo()

poi sui vostri php.ini attivare la registrazione:

[intl] 
intl.error_level = E_WARNING 
extension=php_intl.dll 

e controllare i registri

Se è attivato forse è un malfunzionamento. Provate a scaricare di nuovo la DLL in C: \ PHP \ ext \ php_intl.dll

+0

Grazie, ho finalmente deciso di reinstallare Wamp con l'ultima versione di PHP e ora funziona. –

1

prendersi cura di avere due php.ini:

  • * wamp \ bin \ php \ php5.3.13
  • * WAMP \ bin \ apache \ apache2.2.22 \ bin

si dovrebbe decommentare estensione = php_intl.dll in entrambi.