Функция не всегда возвращает array, обработка исключений

strongmaster

Новичок
Привет. Есть функция которая должна в случае успешной отработки должна вернуть массив.
Как сделать грамотно обработку исключнеий, то есть проверку на то вернула ли функция массив?
У меня примерно вот так.
PHP:
<?php

function somefunction($input)
{
   
    // do something

    if (!isset($return_mass))
    {
        $return_mass[0] = '';
    }

    return array ($return_mass);
}


$test = somefunction('test');

if (count($test) == '1' && $test[0][0] == '')
{
    echo "do something";
}

?>
Заранее спасибо.
 

workOnFood

Новичок
Может быть как-то так?
PHP:
function i_want_array(){
   //do smth
   if($array_doing_well){
      return $my_array;
   }else{
      return false;
   }
}
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@strongmaster, из твоего примера понять что-то нельзя. Задача какая вообще стоит? Какой толк возвращать $return_mass[0] делая с него еще один массив?
 

strongmaster

Новичок
@workOnFood, благодарю! забыл что надо false отдавать в конце если нету результата
@c0dex, задача получить у ф-ции массив, и если он есть, загнать его в базу

Решено
PHP:
<?php

function somefunction($input)
{

    // do something
    //$return_mass[0]='data';
   
    if (isset($return_mass))
    {
        return array($return_mass);
    }

    return false;

}

$test = somefunction('test');

if ($test)
{
    echo "ok";
} else
{
    echo "no result";
}

?>
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@strongmaster, нет, это не задача, это хрень. Если массива нет, надо вернуть не подобие массива а false, как ты сам уже догадался
 

strongmaster

Новичок
@strongmaster, нет, это не задача, это хрень.
А что надо было запостить? 15 скриптов и дамп базы, с названием темы помогите допилить бота с базой в полляма ссылок и чтоб редиректы обрабатывал? Запостил то где вылез мелкий баг.

Так правильнее
Код:
<?php

function somefunction($input)
{

    // do something
    $return_mass[0]='data';
   
    if (isset($return_mass))
    {
        return array($return_mass);
    }

    return false;

}

$test = somefunction('test');

if (is_array($test))
{
    echo "ok";
} else
{
    echo "no result";
}

?>
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
$return_mass[0]='data';

if (isset($return_mass))
{
return array($return_mass);
}
return false;
Ты нормальный? Ты понимаешь, что у тебя условие ВСЕГДА выполнится?
 
Сверху