Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Php, убрать запятую

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Ни как не могу сделать...
seoshnik
Отправлено: 12 Февраля, 2015 - 16:38:40
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




Привет, помогите решить проблему


На выходе так:
keywords 1,keywords 2,keywords 3,keywords 4,

как убрать последнюю запятую?
 
 Top
skiphog
Отправлено: 12 Февраля, 2015 - 16:42:34
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Дек. 2014  
Откуда: Киров, Россия


Помог: 11 раз(а)




На вскидку... два примера
PHP:
скопировать код в буфер обмена
  1. //1
  2. echo rtrim("$test,",',');
  3.  
  4. //2
  5. echo substr("$test,",0,-1);
 
My status
 Top
Sail
Отправлено: 12 Февраля, 2015 - 16:44:35
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




seoshnik, вот Вам другой простой пример:
PHP:
скопировать код в буфер обмена
  1. for($i = 0, $str = ''; $i < 5; $i++) {
  2.     $str .= $i.', ';
  3. }
  4. echo trim($str, ', ');
 
 Top
seoshnik
Отправлено: 12 Февраля, 2015 - 16:45:28
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




skiphog пишет:
На вскидку... два примера
PHP:
скопировать код в буфер обмена
  1. //1
  2. echo rtrim("$test,",',');
  3.  
  4. //2
  5. echo substr("$test,",0,-1);

Что-то ни один код не хочет работать Не понял
(Добавление)
Sail пишет:
seoshnik, вот Вам другой простой пример:
PHP:
скопировать код в буфер обмена
  1. for($i = 0, $str = ''; $i < 5; $i++) {
  2.     $str .= $i.', ';
  3. }
  4. echo trim($str, ', ');

А как-то на моем примере можно это сделать?)
 
 Top
Sail
Отправлено: 12 Февраля, 2015 - 16:57:55
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




seoshnik пишет:
А как-то на моем примере можно это сделать?)

Вероятно,
выполняется в каком-то цикле? Улыбка
Если так, то перед циклом определяете какую-нить переменную.
В цикле - дополняете её значением $test.', '.
И после цикла - применяете соответствующую функцию.
Как-то так.
 
 Top
seoshnik
Отправлено: 12 Февраля, 2015 - 17:27:58
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




сделал так:

PHP:
скопировать код в буфер обмена
  1. $zzzz = $zzzz."$test, ";
  2. $zzzz = str_replace($test.", ".$test, $test, $zzzz);
  3. echo trim($zzzz, ', ');


выходит так:
keywords 1keywords 1,keywords 2keywords 2,keywords 3keywords 3,keywords 4keywords 4

Что я в скрипте лишнего сделал? Не понял
 
 Top
armancho7777777 Супермодератор
Отправлено: 12 Февраля, 2015 - 17:46:37
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




PHP:
скопировать код в буфер обмена
  1. echo join(', ', array('str-1', 'str-2', 'str-3', 'str-4', 'str-5'));

(Отредактировано автором: 12 Февраля, 2015 - 17:47:04)

 
 Top
seoshnik
Отправлено: 12 Февраля, 2015 - 19:19:32
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




armancho7777777 пишет:
PHP:
скопировать код в буфер обмена
  1. echo join(', ', array('str-1', 'str-2', 'str-3', 'str-4', 'str-5'));

можно как-то на моем примере?
 
 Top
DelphinPRO
Отправлено: 12 Февраля, 2015 - 19:39:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




seoshnik пишет:
можно как-то на моем примере?

Вы сначала свой цикл полностью покажите, а не отдельные строки.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
seoshnik
Отправлено: 12 Февраля, 2015 - 19:51:03
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




DelphinPRO пишет:
seoshnik пишет:
можно как-то на моем примере?

Вы сначала свой цикл полностью покажите, а не отдельные строки.

вот большая часть кода

PHP:
скопировать код в буфер обмена
  1. $i= 0;
  2. $out = array();
  3.  
  4. foreach ($data as $key => $val) {
  5.     $tmp = trim($val);
  6.     if (!empty($tmp)) { $out[$i] = str_replace(' ', '-', $tmp); $i++; }
  7. }
  8.  
  9. if ($step > count($out)) {
  10.     foreach ($out as $key => $val) {
  11.         echo $val, '<br />';
  12.     } die();
  13. }
  14.  
  15. if ($seek[0] >= count($out)) $seek[0] = 0;
  16. for ($k=0; $k<$step; $k++) {
  17.     $test = $out[$seek[0]];
  18.     $test = str_replace('-', ' ', $test);
  19. echo"$test,";
  20.     $seek[0]++; if ($seek[0] == count($out)) $seek[0] = 0;
  21. }


Вот это надо изменить
echo"$test,";
На выходе так
keywords 1,keywords 2,keywords 3,keywords 4,
как убрать последнюю запятую?

(Отредактировано автором: 12 Февраля, 2015 - 19:57:00)

 
 Top
exlant
Отправлено: 12 Февраля, 2015 - 20:06:24
Post Id



Посетитель


Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015  


Помог: 14 раз(а)




PHP:
скопировать код в буфер обмена
  1. $i= 0;
  2. $out = array();
  3.  
  4. foreach ($data as $key => $val) {
  5.     $tmp = trim($val);
  6.     if (!empty($tmp)) { $out[$i] = str_replace(' ', '-', $tmp); $i++; }
  7. }
  8.  
  9. if ($step > count($out)) {
  10.     foreach ($out as $key => $val) {
  11.         echo $val, '<br />';
  12.     } die();
  13. }
  14.  
  15. if ($seek[0] >= count($out)) $seek[0] = 0;
  16. for ($k=0; $k<$step; $k++) {
  17.     if($k == $step-1)
  18.           $coma = '';
  19.     else
  20.           $coma = ', ';
  21.     $test = $out[$seek[0]];
  22.     $test = str_replace('-', ' ', $test);
  23. echo $test.$coma;
  24.     $seek[0]++; if ($seek[0] == count($out)) $seek[0] = 0;
  25. }

(Отредактировано автором: 12 Февраля, 2015 - 20:09:22)

 
 Top
seoshnik
Отправлено: 12 Февраля, 2015 - 20:26:14
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




exlant пишет:
PHP:
скопировать код в буфер обмена
  1. $i= 0;
  2. $out = array();
  3.  
  4. foreach ($data as $key => $val) {
  5.     $tmp = trim($val);
  6.     if (!empty($tmp)) { $out[$i] = str_replace(' ', '-', $tmp); $i++; }
  7. }
  8.  
  9. if ($step > count($out)) {
  10.     foreach ($out as $key => $val) {
  11.         echo $val, '<br />';
  12.     } die();
  13. }
  14.  
  15. if ($seek[0] >= count($out)) $seek[0] = 0;
  16. for ($k=0; $k<$step; $k++) {
  17.     if($k == $step-1)
  18.           $coma = '';
  19.     else
  20.           $coma = ', ';
  21.     $test = $out[$seek[0]];
  22.     $test = str_replace('-', ' ', $test);
  23. echo $test.$coma;
  24.     $seek[0]++; if ($seek[0] == count($out)) $seek[0] = 0;
  25. }


БОЛЬШОЕ СПАСИБО!!!
Вопрос решен Подмигивание
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB