Попытка получить новую строку в сообщении sms, отправленном из скрипта php

19

Я пытаюсь получить новую строку, сгенерированную в моем SMS-сообщении, отправленном из скрипта PHP. Я использовал \r\n , <BR> и некоторые шестнадцатеричные коды. Независимо от того, что я делаю, сообщение приходит на мой телефон без перерывов.

$body .= 'City:'.$venue.'\r\n'; //<- doesn't work
$body .= 'State:'.$state.'<br>'; //<- doesn't work

Это мой тип заголовка ... (полный заголовок не включен)

$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

Я использую почту для отправки ...

mail($somenumber,$subject,$body,$headers)

Все работает отлично в том смысле, что я получаю сообщение. Надеюсь, что я что-то упустил, потому что это сводит меня с ума.

    
задан Matt 18.08.2010 в 05:16
источник
  • '\ r \ n' или должно быть "\ r \ n"? –  stillstanding 18.08.2010 в 05:20

13 ответов

18

Использование: %0a , работало для меня в Nokia и Android

    
ответ дан Nasser Al-Wohaibi 19.09.2012 в 10:00
источник
  • работал на iPhone также –  MMachinegun 24.01.2014 в 17:45
  • идеальное решение, спасибо. –  Mahmoud Saleh 02.07.2014 в 11:43
  • Я использую trumpia API и его не работает –  Umesh Aawte 29.01.2016 в 13:16
  • Не работает на smsung galaxy grand –  sugunan 23.11.2016 в 05:56
15

'\ n' напечатает два символа: \ и n

"\ n" будет печатать символ линии (0x0A)

    
ответ дан anonymous 18.08.2010 в 05:21
источник
  • убедился, что код имеет «\ r \ n», а не «\ r \ n», как в моем примере. Еще нет линии. Мог быть моим телефоном. –  Matt 18.08.2010 в 05:36
  • Работает отлично в галактике samsung grand –  sugunan 23.11.2016 в 05:57
1

Используйте \r\n , а затем закодируйте его, используя urlencode() . Он работал на Android

    
ответ дан user1960994 09.01.2013 в 11:41
источник
1

Если бы та же проблема, это разрешило ее

20%

сделал ошибки в предыдущем тексте

этот список всех символов

Ссылка

    
ответ дан Adibas03 20.02.2015 в 10:25
источник
0

Вы устанавливаете тип контента как text / html. Попробуйте отправить <br/> . HTML является непрозрачным агностиком и использует тэг break для создания новой строки.

Если вы не хотите, чтобы сообщение было HTML, не помечать его как таковое.

    
ответ дан Borealid 18.08.2010 в 05:18
источник
  • Да, я пробовал использовать и <br/> (<br> исчезает, но не добавляет разрыв строки и <br/> появляется как> в моем сообщении) –  Matt 18.08.2010 в 05:26
  • @Matt: попробуйте электронную почту с обычным текстом. –  Borealid 18.08.2010 в 05:29
  • Я все же не получил новую строку. –  Matt 18.08.2010 в 05:56
0

Просто немного кода помогает лекарству спуститься. Я забыл важный кусочек кода:

Content-Transfer-Encoding: 7bit

Вам нужен код, добавленный в ваш заголовок. НТН.

    
ответ дан Matt 18.08.2010 в 17:07
источник
0

Вам нужно понять, как это сообщение будет отправлено. Для моей ситуации, используя rubosms api, мне пришлось отключить использование api urlencode (используя php) в моей строке сообщения. Затем работало% 0A.

    
ответ дан Roger Gajraj 20.10.2014 в 04:48
источник
0

Пусть аський сделает для вас работу. Символ ASCII 10 - это возврат каретки. Это работало для меня на Android.

$body =  'City:' . $city;
$body .= chr(10) . 'State:' . $state;
$body .= chr(10) . 'Zip:' . $zip;
    
ответ дан Nicolas Giszpenc 29.04.2017 в 00:41
источник
0

Попробуйте «\ n» вместо «\ n»;

Потому что в одинарных кавычках он принимает символ как есть.

Пример:

echo nl2br('one \n two');//print: one \n two
echo nl2br("one \n two");//print: one <br> two
    
ответ дан waqas 04.08.2017 в 13:53
источник
0

для меня иногда %0a работает, а иногда \n работает, зависит от шлюза SMS

    
ответ дан Mahmoud Saleh 04.02.2018 в 18:42
источник
-1

Вы можете использовать PHP_EOL для завершения строки.

    
ответ дан Roshan Pal 28.09.2013 в 16:50
источник
-1

Использовать двойные кавычки, одинарные кавычки не распознают новые строки

    
ответ дан user2034047 20.10.2014 в 04:52
источник
-3

Используйте% 0a, я думаю, что он будет работать

    
ответ дан Arun Raj R 21.06.2016 в 13:29
источник
  • Дайте правильный ответ. –  Yasin Patel 21.06.2016 в 13:36
  • Это точно то же самое, что и верхний проголосовавший ответ. Какая дополнительная ценность дает этот ответ? –  JJJ 21.06.2016 в 18:52