У меня есть какой-то код, который я редактирую для веб-сайта аукциона, дело в том, что мне нужно $ all_unpaid = false, если bid_amount равно нулю, я пробовал несколько настроек, но без результатов, возможно, у some1 могут быть какие-то предложения?
function direct_payment_multiple ($invoice_id, $items_array, $dp_array, $buyer_id)
{
$output = false;
$nb_sub_arrays = count($dp_array);
if ($nb_sub_arrays)
{
$array_result = $dp_array[0];
for ($i=1; $i<$nb_sub_arrays; $i++)
{
$array_result = @array_intersect($array_result, $dp_array[$i]);
}
$all_unpaid = true;
for ($i=0; $i<$nb_sub_arrays; $i++)
{
$all_unpaid = (!$items_array[$i]['direct_payment_paid'] && !$items_array[$i]['flag_paid'] && $items_array[$i]['bid_amount'] > 0) ? $all_unpaid : false;
}
$same_currency = true;
$currency = $items_array[0]['currency'];
for ($i=0; $i<$nb_sub_arrays; $i++)
{
$same_currency = ($currency == $items_array[$i]['currency']) ? $same_currency : false;
}
}
$output = (is_array($array_result) && $all_unpaid) ? true : false;
return $output;
}
краткий обзор, этот аукционный сайт позволяет пользователям размещать ставку 0,00, если никто их не перебивает, то они получают предмет бесплатно, однако, если кто-то их перебивает, применяется обычный код
эй @TecBrat, я удалил эту строку
$all_unpaid = (!$items_array[$i]['direct_payment_paid'] && !$items_array[$i]['flag_paid'] && $items_array[$i]['bid_amount'] > 0) ? $all_unpaid : false;
и заменил его на
$all_unpaid =true;
if ((!$items_array[$i]['direct_payment_paid'] && !$items_array[$i]['flag_paid'] )
|| !$items_array[$i]['bid_amount'] > 0)
{
$all_unpaid =false;
}
однако, похоже, он делает то же самое, что и b4
Я изменил это на
$all_unpaid =true;
if (($items_array[$i]['direct_payment_paid'] || $items_array[$i]['flag_paid'] )
|| $items_array[$i]['bid_amount'] > 0)
{
$all_unpaid =false;
}
по-прежнему выглядит так же, как b4
В настоящее время это то, с чем я работаю
function direct_payment_multiple ($invoice_id, $items_array, $dp_array, $buyer_id)
{
$output = false;
$nb_sub_arrays = count($dp_array);
if ($nb_sub_arrays)
{
$array_result = $dp_array[0];
for ($i=1; $i<$nb_sub_arrays; $i++)
{
$array_result = @array_intersect($array_result, $dp_array[$i]);
}
$all_unpaid = true;
for ($i=0; $i<$nb_sub_arrays; $i++)
{
$all_unpaid =true; if (($items_array[$i]['direct_payment_paid'] || $items_array[$i]['flag_paid'] ) || $items_array[$i]['bid_amount'] > 0)
{
$all_unpaid =false;
}
}
$same_currency = true;
$currency = $items_array[0]['currency'];
for ($i=0; $i<$nb_sub_arrays; $i++)
{
$same_currency = ($currency == $items_array[$i]['currency']) ? $same_currency : false;
}
}
$output = (is_array($array_result) && $all_unpaid) ? true : false;
return $output;
}