PHP добавить данные в JSON

Всем Привет. Код вроде работает, но не добавляет в json файл, а просто заменяет данные... то есть получается не список, а просто показывает последние данные в json файле. Как делать список, что не так?

<?php
    $message = '';
    $error = '';

    if (isset($_POST['submit'])){
        if (empty($_POST['name'])){
            $error = "<label class='text-danger'>Please, write name</label>";
        }else if (empty($_POST['login'])){
            $error = "<label class='text-danger'>Please, write login</label>";
        }else if (empty($_POST['email'])){
            $error = "<label class='text-danger'>Please, write email</label>";
        }else if (empty($_POST['password'])){
            $error = "<label class='text-danger'>Please, write password</label>";
        }else{
            if (file_exists('data.json')){
                $current_data = file_get_contents('data.json');
                $data = json_decode($current_data, true);
                $register = array(
                  'name' => $_POST['name'],
                  'login' => $_POST['login'],
                  'email' => $_POST['email'],
                  'password' => $_POST['password']
                );
                $data = $register;
                $result_data = json_encode($data);
                if (file_put_contents('data.json', $result_data)){
                    $error = "<label class='text-success'>File append successfully</label>";
                }
            }else{
                $error = 'JSON file not exists';
            }
        }
    }

?>

Ответы (1 шт):

Автор решения: Social Emotion

Замените if (file_put_contents('data.json', $result_data)){ на

if (file_put_contents('data.json', $result_data.PHP_EOL, FILE_APPEND))
→ Ссылка