PHP: Запазване на многоредов низ като единичен ред, за да се запази във формуляр с помощта на str_replace

Опитвам се да запазя в txt форма многоредов str и след това достъп с помощта на 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