PHP: сохранение многострочной строки как одной строки, чтобы сохранить форму с помощью str_replace

Я пытаюсь сохранить в txt форму многострочной строки, а затем получить доступ с помощью функции gets, поэтому я пытаюсь заменить все \n чем-то другим (например, #n). Это не работает по какой-то причине. Даже когда я тестирую функцию str_replace для разных условий поиска, похоже, она не работает. есть идеи, почему?

<?php
        //define variables
        $docRoot = $_SERVER["DOCUMENT_ROOT"];
        $title = $_POST["title"];
        $author = $_POST["author"];
        $content = $_POST["content"];
        $date = time();

        //building post
        str_replace("\\n", "#n", $content);
        $post = $date.' \t '.$title.' \t '.$author.' \t '.$content."\n";

        //open and writing posts file
        file_put_contents("$docRoot/ToDoProject/posts/posts.txt", $post, FILE_APPEND);

        echo "<h1>Post uploaded!</h1>"
    ?>

Пост берет данные из:

<form class="form-horizontal" action="php/processpost.php" method="post">
    <fieldset>

    <!-- Form Name -->
    <legend>Submit post</legend>

    <!--Date -->
    <?php
        $date = date("H:i, dS F, Y");
        echo "$date";
    ?>

    <!-- Text input-->
    <div class="form-group">
    <label class="col-md-4 control-label" for="title">Title</label>  
    <div class="col-md-4">
    <input id="title" name="title" type="text" placeholder="" class="form-control input-md" required="">

    </div>
    </div>

    <!-- Text input-->
    <div class="form-group">
    <label class="col-md-4 control-label" for="author">Author</label>  
    <div class="col-md-4">
    <input id="author" name="author" type="text" placeholder="hephaestus" class="form-control input-md" required="">

    </div>
    </div>

    <!-- Textarea -->
    <div class="form-group">
    <label class="col-md-4 control-label" for="content">Content</label>
    <div class="col-md-4">                     
    <textarea class="form-control" id="content" name="content"></textarea>
    </div>
    </div>
    <!--Submit Button -->
    <button class="btn btn-primary btn-lg" type="submit" value="Submit Order" style="position: absolute; right: 2px;">
    Submit</button>
    </fieldset>
    </form>

также, когда я использую str_replace и когда prag_replace? как ввести тот же код в prag_replace?


person Amittai Aharoni    schedule 23.07.2016    source источник
comment
Попробуйте заменить "\\n" на "\n".   -  person KIKO Software    schedule 23.07.2016
comment
пробовал и не получилось   -  person Amittai Aharoni    schedule 23.07.2016


Ответы (1)


Ошибка именно в этой строке:

//building post
str_replace("\\n", "#n", $content);

Вы заменяете символы новой строки на #n, но не сохраняете результат обратно в $content. Попробуй это:

$content = str_replace("\\n", "#n", $content);
person Christian    schedule 23.07.2016