날짜를 비교하고 제품을 비교하는 간단한 코드가 있습니다. 8 월과 9 월을 제외한 모든 내 월 동안 작동합니다. 나는이 십여 번 갔고, 모든 것은 모든 달 동안 똑같이 보였지만 8 월과 9 월 날짜는 발견되지 않았고, 다른 날짜는 OK입니다.날짜 comparson 코드가 8 월과 9 월 날짜를 찾지 못했습니다.
불쌍한 코드를 사용하여 죄송합니다. 아직 초보자입니다. 사전에
덕분에
<?php
//$ship_date = 20170420;
//$ship_date = 20170520;
//$ship_date = 20170620;
//$ship_date = 20170720;
//$ship_date = 20170820;
//$ship_date = 20170920;
//$ship_date = 20171020;
//$ship_date = 20171120;
$ship_date = 20171220;
$apr = '1';
$may = '1';
$june = '1';
$july = '1';
$august = '1';
$september = '1';
$october = '1';
$nov = '1';
$decem = '1';
$valid = "Y";
$case_qty = 1;
$apr_start = 20170401;
$apr_end = 20170430;
$may_start = 20170501;
$may_end = 20170531;
$june_start = 20170601;
$june_end = 20170630;
$july_start = 20170701;
$july_end = 20170731;
$augmonth_start = 20170801;
$augmonth_stop = 20170831;
$september_start = 20170901;
$september_stop = 20170930;
$october_start = 20171001;
$october_end = 20171031;
$nov_start = 20171101;
$nov_end = 20171131;
$decem_start = 20171201;
$decem_end = 20171231;
$jan_start = 20180101;
$jan_end = 20180131;
$feb_start = 20180201;
$feb_end = 20180228;
$mar_start = 20180301;
$mar_end = 20180331;
if ($valid == "Y")
{
if (($ship_date >= $apr_start) && ($ship_date <= $apr_end))
{
echo "Sold apr<br />";
$apr = $apr + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
//$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $may_start) && ($ship_date <= $may_end))
{
echo "Sold may<br />";
$may = $may + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
//$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $june_start) && ($ship_date <= $june_end))
{
echo "Sold june<br />";
$june = $june + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
//$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $july_start) && ($ship_date <= $july_end))
{
echo "Sold july<br />";
$july = $july + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
//$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $augmonth_start) && ($ship_date <= $augmonth_end))
{
echo "Sold august <br />";
$august = $august + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $september_start) && ($ship_date <= $september_end))
{
echo "Sold sept <br />";
$september = $september + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $october_start) && ($ship_date <= $october_end))
{
echo "Sold oct<br />";
$may = $october + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
//$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $nov_start) && ($ship_date <= $nov_end))
{
echo "Sold nov<br />";
$nov = $nov + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
//$nov = 0;
$decem = 0;
} elseif (($ship_date >= $decem_start) && ($ship_date <= $decem_end))
{
echo "Sold decem<br />";
$decem = $decem + $case_qty;
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
//$decem = 0;
} elseif (($ship_date >= $jan_start) && ($ship_date <= $jan_end))
{
echo "Sold jan<br />";
$jan = $jan + $case_qty;
//$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $feb_start) && ($ship_date <= $feb_end))
{
echo "Sold feb<br />";
$feb = $feb + $case_qty;
$jan = 0;
//$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} elseif (($ship_date >= $mar_start) && ($ship_date <= $mar_end))
{
echo "Sold mar<br />";
$mar = $mar + $case_qty;
$jan = 0;
$feb = 0;
//$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
} else
{
echo "No month selected!!!!!! " . $ship_date . "<br />";
$jan = 0;
$feb = 0;
$mar = 0;
$apr = 0;
$may = 0;
$june = 0;
$july = 0;
$august = 0;
$september = 0;
$october = 0;
$nov = 0;
$decem = 0;
}
}
echo "Month Totals: " . $jan . " " . $feb . " " . $mar . " " . $apr . " " . $may . " " . $june . " " . $july .
" " . $august . " " . $september . " " . $october . " " . $nov . " " . $decem . "<br />";
?>
변수 정의에'_end' 대신'_stop'을 썼기 때문에 (런타임시 경고를 생성해야합니다). 게다가이 코드는 매우 반복적이며 미래의 증거는 아니라고 생각하지 않습니까? 데이터의 적절한 날짜 함수와 배열을 사용하여 이것을 다시 작성해야합니다. 이것은 정말로 추악합니다. –
배열에 대해 배우고 싶을 것입니다 ... – iainn
루프를 사용하여 이렇게하는 알고리즘을 작성하는 것이 좋습니다. 반복적으로 모든 12 개월을 수동으로 나열하는 것이 아닙니다. 또한 오타 오류를보다 쉽게 방지 할 수 있습니다. – deceze