J'utilise PHP 5.4.4 et j'obtiens un comportement très étrange avec les fonctions de sauvegarde et de mise à jour de FuelPHP ORM.
J'essaie d'enregistrer des données sérialisées ou JSON dans un champ de la base de données, ce qui donne quelque chose du genre {"name":"michael"}
. Lorsque j'utilise le model->save()
directement après Model::forge()
Cela semble fonctionner correctement dans 100% des cas et la chaîne que vous voyez est celle qui est stockée dans la base de données MySQL.
Cependant, si je modifie immédiatement quelque chose comme model->property = 'new property' (pas la propriété JSON ou les données sérialisées) et que je fais ensuite un autre model->save()
Dans 90 % des cas, il transformera toutes mes "
en "
;
Il semble que lorsque je débogue le problème et que je le parcours ligne par ligne, le problème ne se reproduit pas ! Il peut parcourir l'intégralité du script et avoir toujours le bon résultat. "
au lieu de "
;
Ce problème me rend fou. Je suppose que c'est un problème de configuration, sinon il y aurait beaucoup plus de plaintes, mais je n'arrive pas à trouver le bon interrupteur. J'ai réglé les deux php_flag magic_quotes_gpc Off
y php_flag magic_quotes_runtime Off
dans mon .htaccess (bien qu'il ne devrait pas être nécessaire en PHP 5.4+) et vérifié que les deux sont faux.
Je suis à court d'idées. Tout ce qui peut servir de piste de recherche serait vraiment utile.