powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] функция не возвращает результат
2 сообщений из 2, страница 1 из 1
[PHP] функция не возвращает результат
    #39232773
Zhenek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
function obrez($str, $level,$limitarr,$mass) {
//global $mass;
$intext = $str;
if($limitarr[$level]==''){$lim=strlen($intext);}else{$lim=$limitarr[$level];}// если остатки
if(strlen($intext)<=$lim){$mass[]=$intext; return $mass;}else{
$str = mb_substr($str,0,$lim+1,'UTF-8');
$res = substr($str,0,strrpos($str,' ')); // обрезанный фрагмент
$mass[]=$res;
$str = str_replace($res,'',$intext);
obrez($str, $level+1,$limitarr,$mass);
}
}
$limitarr = array(10,50,100); 
$m = obrez($randtext['text'], 0,$limitarr,$mass);
echo '<pre>';
print_r($m);
echo '</pre>';



Добрый день. Написал вот такую функцию. Суть ее проста, на вход она получает некий текст,и массив длинн
в данном случае ей нужно обрезать текст на куски 10,50,100 символов и остатки.

Но не суть.. Суть в том, что return не возвращает массив и в <pre> пусто, хотя если вызвать перед return $mass; print_r($mass);, то она вывалит этот самый массив.
Причем уже ковырялся и ставил костыли разные, если сделать массив $mass глобальным, то <pre> заполнится, но не хотелось бы делать глобальные переменные.
...
Рейтинг: 0 / 0
[PHP] функция не возвращает результат
    #39232948
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zhenek,

нет return $mass; в секции ELSE
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] функция не возвращает результат
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]