2016-04-13 2 views
1

Я хочу написать новую строку, но она просто пишет в конце строки и не запускает новую строку. У меня вопрос: как это исправить?Как начать новую строку?

<?php 

if (isset($_POST['submit'])){ 
$data=array($_POST['name'].",", $_POST['genger'].",",$_POST['age']."," ,$_POST['personalitytype']."," ,$_POST['OS']."," ,$_POST['min']."," , $_POST['max']); 

file_put_contents('singles.txt', $data, FILE_APPEND); 
} 
?> 
+0

Вам нужен '«\ п» 'на. конец '$ data' –

+0

@JayBlanchard Точный символ (ы), который вам нужен, действительно зависит от типа разрыва строки, который вы хотите использовать, но, кроме этого, правильно. – arkascha

+0

True @arkascha, но поскольку он выглядит как текстовый файл CSV, я пошел с непосредственной необходимостью. –

ответ

4

Попробуйте поставить на последнюю позицию вашего массива преломление линии \r\n.

+0

Как вы выразились? Вы поставили две двойные кавычки '' \ r \ n "' для их хранения в массиве? –

+1

:))) Хорошо, у меня была ошибка. Это сработало! Большое спасибо. :) – trungducng

+0

@ zexi123 Добро пожаловать :). Пожалуйста, не забудьте принять ответ, если он решил вашу проблему. –

2

Вы должны взрываться массив (как только вы исправить ошибки синтаксиса конкатенации) и добавить разрыв строки в конце интегрировалась линии:

if (isset($_POST['submit'])){ 
$data=array($_POST['name'].",". $_POST['genger'].",".$_POST['age'].",". $_POST['personalitytype'].",".$_POST['OS'].",".$_POST['min'].",". $_POST['max']); 
$line = implode(',', $data)."\n"; // creates a comma separated line with a line break at the end 

file_put_contents('singles.txt', $line, FILE_APPEND); 
} 
+1

большое спасибо :) Я пробовал, и это работает как мое ожидание :) – trungducng

Смежные вопросы