Laravel 5.4 Tableau de conversion de chaîne de caractères d'exception
Je suis en train de briser une chaîne dans un tableau et ensuite imprimer les valeurs sur l'écran. Ici est la chaîne que je suis en train de pause:
"Cog|Condor"
"|" à l'aide de ce split. Voici comment je fais:
<?= $arrays = explode('|', $b->brand); foreach($arrays as $array){echo $array;} ?>
Mais je reçois cette exception:
2/2) ErrorException
Array to string conversion (View: D:\Code\PHP\Code\CrownBillingSystem\resources\views\pages\print.blade.php)
in 6e7ee4930110d4a26a3e31e0ddfe8b87849a1319.php (line 93)
at CompilerEngine->handleViewException(object(ErrorException), 1)
in PhpEngine.php (line 44)
at PhpEngine-
Je ne peux pas comprendre quel est le problème ici.
C'est ce que j'ai dit moi-même pendant des heures...
La lame a été conçue pour éliminer l'utilisation normale des balises php donc je ne comprends pas les réponses utilisations de celui-ci. Pourquoi ne pas essayer d'utiliser
Je pense que c'est mieux comprendre pourquoi les choses arriver en premier. Ensuite, vous pouvez utiliser la meilleure et la plus facile des solutions disponibles.
La lame a été conçue pour éliminer l'utilisation normale des balises php donc je ne comprends pas les réponses utilisations de celui-ci. Pourquoi ne pas essayer d'utiliser
@php
et @endphp
en place de la <?=
et ?>
respectivementJe pense que c'est mieux comprendre pourquoi les choses arriver en premier. Ensuite, vous pouvez utiliser la meilleure et la plus facile des solutions disponibles.
OriginalL'auteur Muhammad Muneeb ul haq | 2017-08-25
Vous devez vous connecter pour publier un commentaire.
Tandis que les autres réponses ne sont pas incorrects, la Lame a été conçu pour éliminer l'utilisation des balises PHP. Lame fonctions vous permettent de tout faire.
L'erreur produite ici est que
<?=
est un raccourci pour<php echo
. Ainsi, votre code sera rendu deecho $arrays
en pseudo-code, qui est où le PHP, c'est de casser parce que vous ne pouvez pas l'écho d'un tableau.Pour améliorer votre code dans ce cas, vous devez manipuler autant de données que possible, dans le contrôleur, qui est également mentionné ici dans la lame de la documentation.
Pourrais-je vous suggérer de modifier votre code, pour produire le même résultat, mais à l'aide de la lame.
L'extrait ci-dessus se produisent les mêmes résultats que prévu.
Une bien meilleure façon de le faire, et d'approfondir vos connaissances serait de revenir à la vue depuis le contrôleur, et passer dans
$arrays
prédéfinis. Quelque chose comme ceci:Ci-dessus vous permettra d'utiliser l'extrait de code 2, mais sans le
@php ...@endphp
balises, et il suffit d'utiliser la@foreach() ... @endforeach
OriginalL'auteur mbozwood
Vous ne pouvez pas mettre plusieurs instructions dans
<?= ... ?>
blocs - c'est à court de main d'echo, de sorte que votre code s'étend àSi vous souhaitez effectuer des opérations et de la production, vous avez juste besoin d'utiliser les balises PHP:
OriginalL'auteur iainn
Vous utilisez le PHP balise courte
<?=
qui est équivalent à<?php echo
. Ainsi, il essaie deecho
la Matrice, ce qui vous ne pouvez pas. De faire comme ceci:OriginalL'auteur ishegg
Vous devez remplacer
<?=
par cette<?php
.OriginalL'auteur Ian Rodrigues