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 :: Не работает return

 PHP.SU

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


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

> Описание: В функции
Еугений
Отправлено: 25 Мая, 2012 - 18:08:10
Post Id


Частый гость


Покинул форум
Сообщений всего: 176
Дата рег-ции: Апр. 2011  


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




У меня есть длинная функция с рекурсией. Она обрабатывает текст как надо. В итоге когда текст получился как надо, его надо вывести. Echo работает:
function abc($text){
echo $text;
}
если просто запустить функцию в документе то на экран выведет нормальный обработанный текст. Abc("бла бла бла") - выведет обработанный блаблабла.
но если в функции вместо эха поставить return,
function abc($text){
return $text;
}
то он не выводит:
echo abc("текст который нужно обработать");. Просто пустой экран.
мозг сломал, почему такое может быть?

(Отредактировано автором: 25 Мая, 2012 - 18:09:16)

 
 Top
LIME
Отправлено: 25 Мая, 2012 - 18:12:33
Post Id


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


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


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




 
 Top
tato
Отправлено: 25 Мая, 2012 - 18:19:58
Post Id



Посетитель


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


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




код в студию!


-----
просто ?: сложно
 
 Top
Еугений
Отправлено: 25 Мая, 2012 - 19:04:39
Post Id


Частый гость


Покинул форум
Сообщений всего: 176
Дата рег-ции: Апр. 2011  


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




Написал в теле функции define (text, $text). теперь хоть текст можно получить
 
 Top
Medallion
Отправлено: 25 Мая, 2012 - 19:53:21
Post Id



Частый гость


Покинул форум
Сообщений всего: 253
Дата рег-ции: Май 2012  
Откуда: Херсон, Украина


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




Функция может вернуть только одно значение.
Если есть несколько значений, собери в массив.
Например, есть функция:
PHP:
скопировать код в буфер обмена
  1.  
  2. function text($text) {
  3.     return $text;
  4. }
  5.  
  6. // И теперь вызов
  7. text('Я, текст');
  8. // Этот вызов, ничего не выведет на экран, функция ведь возращает
  9. // Значит значение функции нужно поместить в переменную, вот так
  10. $result = text('Я, текст');
  11. echo $result;
  12. // Сейчас выводиться Я, текст из переменной $result
  13.  
 
 Top
OrmaJever Модератор
Отправлено: 25 Мая, 2012 - 20:07:38
Post Id



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


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


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




без кода вобще ничего сказать нельзя


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 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