Есть файлик Код (Text): <?php $host = 'localhost'; $db = 'test'; $user = 'test'; $pass = 'test'; $charset = 'utf8'; $dsn = "mysql:host=$host;dbname=$db;charset=$charset"; $opt = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; $pdo = new PDO($dsn, $user, $pass, $opt); $response = array(); $result = $pdo->query("SELECT * FROM c068t_k2_items where catid = 6"); $response["items"] = array(); while ($row = $result->fetch()) { //print_r($response); $product = array(); $product["id"] = $row["id"]; $product["title"] = $row["title"]; $product["catid"] = $row["catid"]; $product["created"] = $row["created"]; $product["introtext"] = $row["introtext"]; array_push($response["items"], $product); } $response["success"] = 1; echo json_encode($response); ?> который выбирает из БД записи с выдает это в JSON, все работает но есть небольшие проблемы: 1. Колонка introtext содержит текст такой примерно Код (Text): <p>текст.</p> <p>текст.</p> <p>текст.</p> <p style="text-align: center;"><img src="images/izvestnye-ludi/img1.jpg" alt="Image 1" /></p> <p style="text-align: center;">текст.</p> А в JSON я получаю текст где <p> заменен на \r\n Как заменять \r\n на <p> 2. Колонка introtext содержит строки <p style="text-align: center;"><img src="images/img/img1.jpg" alt="Image 1" /></p> но вместо такого же текста в JSON я получаю просто текст Image 1 В итоге у меня вопрос, можно в JSON получить такой же текст как в колонке?
Результат получше есть тег <p> и ссылка на картинку есть, но все равно в некоторых местах все равно или слеш обраный \ или \r\n встечается.. Дело в том что я получемые данные потом буду использовать в андроид приложении, а там я так понимаю он будет брать то что в браузере я вижу. т.е. без ссылки на картинку и без <p>
1. Я думаю в БД так же есть /n/r ... то что вы их не видите - не говорит что их нет 2. Если браузер адекватный - отобразит все как нужно ... Интересно, а как вы визуально хотели увидеть тег <p> - параграфа? А то что картинку не видите - так у вас путь относительный ... а он чего относителен того и касателен.... если будете передавать полный путь с указанием сервера - вам браузер все отобразит Вывод - JSON вообще не при чем
Я понимаю что json не причем. Вопрос был в другом, как при выборке сделать заменять \r\n например на <p> или делать другие замены в строках --- Добавлено --- Интересно, а как вы визуально хотели увидеть тег <p> - параграфа? Как увидел... в БД она есть, получил json и посмотрел исходный код страницы php где получаю json и там увидел
- еще раз - ничего там не заменено, следовательно и обратно не нужно. Если уж очень хочется поизвращаться - то nl2br() или str_replace() и заменять тогда уж на <br/> ибо это и есть перевод строки