J'utilise strip_tags en PHP et après avoir traité la chaîne, la chaîne maintenant contient pas non plus \ n de ..balises strip PHP supprimant également n
Est-ce standard avec strip_tags?
J'utilise strip_tags en PHP et après avoir traité la chaîne, la chaîne maintenant contient pas non plus \ n de ..balises strip PHP supprimant également n
Est-ce standard avec strip_tags?
Le but de stripcslashes est d'enlever \ n \ r etc comme indiqué ici.
http://www.php.net/manual/en/function.stripcslashes.php
Y at-il d'autre dans votre code que vous pouvez fournir?
Un test avec un simple:
$str = "This is a test \n \n \n \n where are you going?";
echo strip_tags($str);
// still will print out the first sentence followed by four lines then the second sentence
Qu'est-ce que stripcslashes a à voir avec la question? – NikiC
strip_tags ne doit pas supprimer \ n mais peut-être qu'il supprime <br>
.
Essayez d'ajouter une liste de balises pour permettre:
strip_tags('Hello<br>World', '<br>');
ce shold permettent <br>
balises de rester dans la chaîne.
Eh bien, est-ce si difficile à tester? :)
class StripTagsTest extends PHPUnit_Framework_TestCase {
public function testStripTagsShouldNotRemoveLF() {
$input = "Hello\n <b>World</b>\n";
$actual = strip_tags($input);
$expected = "Hello\n World\n";
$this->assertEquals($expected, $actual);
}
public function testStripTagsRemovesBRTagByDefault() {
$expected = "HelloWorld\n";
$input = "Hello<br>World<br>\n";
$actual = strip_tags($input);
$this->assertEquals($expected, $actual);
$input = "Hello</br>World</br>\n";
$actual = strip_tags($input);
$this->assertEquals($expected, $actual);
}
public function testStripTagsCanPermitBRTags() {
$expected = "Hello<br>World<br>\n";
$actual = strip_tags($expected, '<br>');
$this->assertEquals($expected, $actual);
$expected = "Hello</br>World</br>\n";
$actual = strip_tags($expected, '<br>');
$this->assertEquals($expected, $actual);
}
}
Ce test va réussir. Le même résultat est en utilisant des guillemets simples. Donc, non, strip_tags ne supprime pas \ n.
EDIT: Comme d'autres personnes l'ont déjà signalé - strip_tags supprime probablement la balise <br>
dans votre boîtier. De plus, la prochaine fois, si vous fournissez du code, vous obtiendrez votre réponse plus rapidement. Ajout de deux nouveaux tests :)
pour répondre avec un test unitaire - c'est bien +1 – NikiC
Retire-t-il les véritables \ n's ou seulement les retours à la ligne affichés? – NikiC
Pouvez-vous poster le code que vous utilisez? Je viens de tester avec PHP 5.3.x et il ne se déshabille pas pour moi. –