J'ai ajouté cette ligne dans mon modèle personnalisé pour afficher l'image:
<?php echo $article->images; ?>
Et j'ai eu ceci à la suite:
{"image_intro":"images\/articles\/liang2.jpg","float_intro":""}
J'ai donc essayé d'afficher l'image en utilisant ceci:
<img src="<?php echo $images->image_intro; ?>" >
La sortie est la suivante: <img src="">
au lieu de <img src="images/articles/liang2.jpg">
Où vais-je mal?
L'image fait partie d'une chaîne codée JSON, que vous avez vue en faisant écho à $article->images;
.
Par conséquent, avant d'essayer d'afficher l'image, vous devez d'abord décoder la chaîne, comme suit:
$images = json_decode($article->images);
Tu es très proche. Il ne vous manque plus que l'étape du décodage du $article->images
chaîne json.
Comme "A. Snake" correctement dit, vous devez convertir la chaîne JSON en un objet par lequel vous pouvez accéder à chaque clé et valeur.
page de manuel de PHP pour la fonction json_decode ()
Donc cela fonctionnera:
$images = json_decode($article->images);
echo $images->image_intro
Ou vous pouvez le faire en une seule ligne dans votre tag comme ceci:
<img src="<?php echo json_decode($article->images)->image_intro; ?>" >
Pour écrire une déclaration de variable à l'aide de la chaîne JSON décodée, utilisez la syntaxe suivante:
$value = $JSON_object->key
Voir le manuel php pour plus de spécifications et d'exemples.