Trim \ n kaldırmaz

1 Cevap

Ben textarea bir dize alarak ve patlayan ve array_map ile dizi () her satırı kırparak ediyorum:

$answers = explode("\n", $data['answers']);
// remove all whitespace such as \r (carriage return)
$asnwers = array_map('trim', $answers);

Sonra veritabanında bir tablo cevapları ayrı bir satırda her dizi değeri saklamak. Sorun veritabanında her cevabın sonunda n karakteri \ edilecek gibi görünüyor olduğunu. Ben bu HTML gibi cevaplar echo zaman:

<?php foreach ($this->answers as $a): ?>
                <tr>
                    <td><?php echo $this->escape($a->body); ?></td>
                </tr>
<?php endforreach; ?>

Sonra HTML kaynağına baktığınızda bunu görürsünüz:

                <tr>
                    <td>Some random answer
</td>
                </tr>

Gördüğünüz gibi kapanış etiketi sonraki satıra taşınmış olur çünkü, dizenin sonunda bir satırbaşı (muhtemelen \ n) var.

Ben yanlış ne yapıyorum?

1 Cevap

$asnwers = array_map('trim', $answers);

Sen $asnwers için array_map dönüş değeri atama ediyoruz. Bu olmalı $answers.