2011-10-04 3 views
2

Je le code suivant dans une vue:Codeigniter - supprimer les lignes vides de mes vues rendues

<div> 
    <p>Some text here</p> 
    <?= $content ?> 
    <p>..another paragraph here</p> 
</div> 

Maintenant, si la variable $content est une chaîne vide-je obtenir:

<div> 
    <p>Some text here</p> 

    <p>..another paragraph here</p> 
</div> 

Que dois-je besoin de faire pour empêcher cette ligne vide d'être ajouté à mon code HTML?

Je suis à la recherche d'une solution qui préserve le formatage de mon code à la fois dans mon fichier de vue et dans le code HTML rendu au navigateur.

Répondre

3

Ouvrez et fermez vos balises PHP avant vos nouvelles lignes afin que l'espace blanc soit dans la portée de PHP et soit donc ignoré et ne soit pas envoyé au navigateur.

<p>Some text here</p><?php 
echo $content; 
?><p>..another paragraph here</p> 
+0

C'est un correctif assez moche –

+0

Merci @Matt, mais je cherchais une solution qui permettrait de conserver le formatage de mon code dans mon fichier de vue et aussi dans le rendu HTML ... – freshest

+0

@freshest, C'est ainsi que ça se passe . Comme l'a dit Matt, si l'espace est en dehors des balises php, il sera envoyé au navigateur. La seule autre façon de le faire est de changer complètement la façon dont vous utilisez vos points de vue et d'aller à un système de modèle (un changement assez spectaculaire, pour se débarrasser des espaces blancs). Je voudrais savoir, quelle est la poussée pour le même formatage? Ne devriez-vous pas compresser votre code HTML avant de le pousser dans le navigateur? – swatkins

-1
<p>Some text here</p> 
<?php 
if($content != "") 
echo $content; 
?> 
<p>..another paragraph here</p> 

vous venez de mettre une instruction conditionnelle là.

+0

Il en résulte que 2 nouvelles lignes sont ajoutées indépendamment. – Matthew

0

Si vous ne travaillez pas avec l'analyseur de modèles de CI, vous pouvez choisir un système de modèles complet. J'utilise Smarty avec CI, et fonctionne bien (pour moi). Smarty a strip function ce qui rend semblable ce que vous voulez.

Questions connexes