Вот моя функцияПочему моя функция ничего не возвращает?
function get_products($business_id){
$sql = "SELECT
b.*, b.name as business_name, p.builder_id,
bs.*, p.price, p.name as product_name, p.description, p.image, p.per_station, p.skip_screen
FROM
builder_product bp
JOIN builder_step bs ON bp.builder_step_id = bs.builder_step_id
JOIN builder b ON bp.builder_id = b.builder_id
WHERE b.business_id = '{$business_id}'
ORDER by b.step_number, b.price";
$result = mysql_query($sql);
$steps = array();
while($row_r = mysql_fetch_assoc($result)){
$steps["all_steps"]['business_id'] = $business_id;
$steps["business_name"] = $row_r['business_name'];
$steps["builder_id"] = $row_r['builder_id'];
if (count($steps) == 0) {
$business_id = 59;
get_products($business_id);
}else{
$steps["business_id"] = $business_id;
return $steps;
}
}
Вот вызов функции
$products = get_products($_GET['business_id']);
Почему я не получаю возврат из этой функции .... Я делаю print_r право перед return, и у меня есть массив с множеством данных, но если я сделаю print_r ниже вызова этой функции, я ничего не получаю. Я делаю рекурсивный вызов, чтобы обеспечить меня есть обратный массив ... любые идеи, что я пропускаю
* вздох * http://bobby-tables.com/ – Quentin
У вас есть только оператор 'return' в случае' else'. Если вы не введете случай 'else', вы не вернете значение. –
Я вхожу в другое ... Я делаю print_r прямо перед возвратом, и я получаю массив – Trace