Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   PHP, пустая строка, сообщение (https://javascript.ru/forum/server/11010-php-pustaya-stroka-soobshhenie.html)

Slawaq 02.08.2010 11:56

PHP, пустая строка, сообщение
 
как можно узнать ли пустая строка всмысле если там только символы пробела типа
$string = " ";
если 1 и больше символов пробела есть и при этом в строке только символы пробела то сделать то, ну короче проверка на пустое, так сказать сообщение

Slawaq 02.08.2010 12:06

и ещё когда использую функцию типа
msg.replace('\n','\v') то заменяет только 1 символ перевода строки если их там их несколько то оно один раз переносит а потом просто всё соиденяет чере пробел, как эту проблему решить?

Gozar 02.08.2010 12:14

Цитата:

Сообщение от Slawaq (Сообщение 65958)
как можно узнать ли пустая строка всмысле если там только символы пробела типа
$string = " ";
если 1 и больше символов пробела есть и при этом в строке только символы пробела то сделать то, ну короче проверка на пустое, так сказать сообщение

проверять регуляркой: "присутствуют ли непробельные символы"

Gozar 02.08.2010 12:16

Цитата:

Сообщение от Slawaq (Сообщение 65961)
и ещё когда использую функцию типа
msg.replace('\n','\v') то заменяет только 1 символ перевода строки если их там их несколько то оно один раз переносит а потом просто всё соиденяет чере пробел, как эту проблему решить?

какую проблему? и что нужно сделать?

Slawaq 02.08.2010 12:17

а можно сразу функцию которая проверяет строку и возвращает тру или фолс, а то я ещё не читал реги для php, а?))
и ещё как сделать чтобы реплейс заменял больше одного раза?

ну смотри если такое сообщение водиться
"dfgdf
dfgdf
fdg
xccg
v" то после того как я делаю с этим replace('\n','\v') то мне выводит такое
"dfgdf
dfgdf fdg xccg v" то есть получаеться только один раз делает реплейс чтоли?

Gozar 02.08.2010 12:38

Цитата:

Сообщение от Slawaq (Сообщение 65966)
ну смотри если такое сообщение водиться
"dfgdf
dfgdf
fdg
xccg
v" то после того как я делаю с этим replace('\n','\v') то мне выводит такое
"dfgdf
dfgdf fdg xccg v" то есть получаеться только один раз делает реплейс чтоли?

<textarea id="c">dfgdf
dfgdf
fdg
xccg
v</textarea>
<script>var s = document.getElementById('c').value;
alert(s.replace(/[\r\n]+/g,'\v'))</script>

модификатор g - глобал
кстати для чего вы заменяете на \v?

Gozar 02.08.2010 12:41

по поводу php можно попробовать комбинацию:$a = trim($a), а затем strlen($a) > 0, не уверен, тороплюсь, срочно бегу

но вообще лучше регой,

Slawaq 02.08.2010 17:33

replace(/[\r\n]+/g,'\v') о это то) а от ещё, я делаю то типа гостевую книгу так вот, когда передаю через гет в закодированном виде текст, коду ПХП, а ПХП просто типа его выводит через echo, так вот если в текстареа был введён такой текст
"ываыв выа ываыва!


авпвап вапва фывф"
то потом мне выводит
"ываыв выа ываыва!
авпвап вапва фывф"
вопрос, как сделать чтобы она не убирало лишние пробелы и переносы, ну и там символы табуляции?
п.с. Кстати тут на форуме мне убрало пробелы между "вапва фывф"

nemo 02.08.2010 17:38

if($moya_peremennaya=='на то что реигирует услвоие, если пробел то ищи пробел в гугле на языке php'){пусто}else{не пусто}
в карму плюс

Slawaq 02.08.2010 17:55

Цитата:

Сообщение от nemo (Сообщение 66029)
if($moya_peremennaya=='на то что реигирует услвоие, если пробел то ищи пробел в гугле на языке php'){пусто}else{не пусто}
в карму плюс

нет я же говорю это реагирует только если один пробел, но ведь для пользователя что один пробел что сто, всё ровно это пустое сообщение и мне надо такие блокировать, так сказать если в строке только непечатаемые символы значить не выводить, от в чём пироги


Часовой пояс GMT +3, время: 02:52.