Je suis en train d'éditer mon script de contrôleur pour le faire fonctionner plus vite, avoir moins de lignes. J'ai une version qui fonctionne tout à fait bien, mais la version modifiée revient sans cesse avec cette erreur, et il pointe à cette ligne:PHP: Appel à un format de fonction membre() sur booléen ... quoi
echo Datetime::createFromFormat('m-d-Y',$prodDate[3])->format('Y-m-d');
Il est bizarre que la page affiche la date, puis appelez l'erreur. Ainsi, l'écho fonctionnera, mais il est dit que l'erreur est sur cette ligne ...
Les lignes avant la ligne d'erreur:
$prodName = explode("@", $product['name']);
$prodDate = explode(" ",$prodName[1]);
donc je partage une chaîne pour trouver la date. Le format de chaîne va: xxx @ yyy date. Je l'explose pour trouver le 'xxx', puis je prends l'index [1] du tableau éclaté, qui contient 'yyy date' pour trouver seulement la 'date'
Quand je résonne $ prodDate [3 ], il récupère la date avec succès. Ensuite, je veux conserver cette date dans ma table mysql, donc ce que j'utilise
echo Datetime::createFromFormat('m-d-Y',$prodDate[3])->format('Y-m-d');
Je ne peux pas savoir où le problème est ... le script original (celui qui fonctionne) ressemble à ceci et cela fonctionne complétement bien
Vérifiez la sortie de '' 'prodDate $ [3]' '' car il semble causer une erreur sur ce point. Remplacez la variable par une chaîne et cela fonctionne bien: '' 'echo Datetime :: createFromFormat ('md-Y', '12 -23-2017 ') -> format (' Ym-d ');' '' – MrMarlow
Si c'est montrant la date et signalant ensuite l'erreur, l'erreur doit se trouver sur une ligne différente de l'écho. – Barmar
Si '$ prodName [1]' contient 'yyy date', alors la date devrait être dans' $ prodDate [1] ', pas' $ prodDate [3] '. – Barmar