Сценарийде кері күн тәртібі

I have a recruitment script written in PHP that I am working with at present. On our registrations page there is a drop down for date of birth which you can see in action here: http://www.v3recruitment.com/users/register.php

Көріп отырғанымдай, күн 1900 жылдан басталады, мен не істегім келеді - күн тәртібін кері қайтару. Күндерді жасайтын кодты таптым деп ойлаймын, бірақ менің PHP-ті күндерді кері тәртіпте көрсету үшін қалай алуға болатындығын білу жеткіліксіз, мына код:

function FetchYears($type){
    $start = 1901;
    $end = date("Y");
    for($i=$start;$i<=$end;$i++){
        $array[]['year'] = $i;
    }
    return $array;
}

Алдыңғы ұш Smarty үлгілерін пайдаланады және мына код:

      {section name="c" loop=$dob_years}
      
      {/section}

Маған осыған көмектесе ме?

1
array_reverse() бөлімін қараңыз
қосылды автор naththedeveloper, көзі
array_reverse() бөлімін қараңыз
қосылды автор naththedeveloper, көзі

16 жауаптар

Either reverse loop or use array_reverse()

change return$array; to return array_reverse($array);

Ақылдылық үшін өте қарапайым, PHP-де бұл функцияны жасаудың қажеті жоқ, ол ақылдылықпен де жасалуы мүмкін.

{foreach $dob_years as $entry)
    
{/foreach}

Check HTML_SELECT_DATE in smarty or simply use just the code below doesn't require any additional PHP code.

 {assign var=currentYear value=$smarty.now|date_format:"%Y"}
 {assign var=fromYear value="2003"}
 {section name=years start=$currentYear step=-1 loop=$fromYear}
    {$smarty.section.years.index}
 {/section
3
қосылды
Осындай қарапайым! рахмет!
қосылды автор Webbly Brown, көзі
Сіз бұл жауапты қанағаттандыратын болса, сіз оны қабылдай аласыз, оны жауап ретінде белгілей аласыз.
қосылды автор Robert, көзі

Either reverse loop or use array_reverse()

change return$array; to return array_reverse($array);

Ақылдылық үшін өте қарапайым, PHP-де бұл функцияны жасаудың қажеті жоқ, ол ақылдылықпен де жасалуы мүмкін.

{foreach $dob_years as $entry)
    
{/foreach}

Check HTML_SELECT_DATE in smarty or simply use just the code below doesn't require any additional PHP code.

 {assign var=currentYear value=$smarty.now|date_format:"%Y"}
 {assign var=fromYear value="2003"}
 {section name=years start=$currentYear step=-1 loop=$fromYear}
    {$smarty.section.years.index}
 {/section
3
қосылды
Осындай қарапайым! рахмет!
қосылды автор Webbly Brown, көзі
Сіз бұл жауапты қанағаттандыратын болса, сіз оны қабылдай аласыз, оны жауап ретінде белгілей аласыз.
қосылды автор Robert, көзі

Either reverse loop or use array_reverse()

change return$array; to return array_reverse($array);

Ақылдылық үшін өте қарапайым, PHP-де бұл функцияны жасаудың қажеті жоқ, ол ақылдылықпен де жасалуы мүмкін.

{foreach $dob_years as $entry)
    
{/foreach}

Check HTML_SELECT_DATE in smarty or simply use just the code below doesn't require any additional PHP code.

 {assign var=currentYear value=$smarty.now|date_format:"%Y"}
 {assign var=fromYear value="2003"}
 {section name=years start=$currentYear step=-1 loop=$fromYear}
    {$smarty.section.years.index}
 {/section
3
қосылды
Осындай қарапайым! рахмет!
қосылды автор Webbly Brown, көзі
Сіз бұл жауапты қанағаттандыратын болса, сіз оны қабылдай аласыз, оны жауап ретінде белгілей аласыз.
қосылды автор Robert, көзі

array_reverse does what it says on the tin.

2
қосылды

array_reverse does what it says on the tin.

2
қосылды

array_reverse does what it says on the tin.

2
қосылды

Бұны көріңіз

function FetchYears($type){
    $start = date("Y");
    $end = 1901;
    for($i=$start;$i>=$end;$i--){
        $array[]['year'] = $i;
    }
    return $array;
}

немесе array_reverse пайдаланып, массивіңізді қайтарыңыз

function FetchYears($type){
    $start = 1901;
    $end = date("Y");
    for($i=$start;$i<=$end;$i++){
        $array[]['year'] = $i;
    }
    return array_reverse($array);
}
1
қосылды

Бұны көріңіз

function FetchYears($type){
    $start = date("Y");
    $end = 1901;
    for($i=$start;$i>=$end;$i--){
        $array[]['year'] = $i;
    }
    return $array;
}

немесе array_reverse пайдаланып, массивіңізді қайтарыңыз

function FetchYears($type){
    $start = 1901;
    $end = date("Y");
    for($i=$start;$i<=$end;$i++){
        $array[]['year'] = $i;
    }
    return array_reverse($array);
}
1
қосылды

Бұны көріңіз

function FetchYears($type){
    $start = date("Y");
    $end = 1901;
    for($i=$start;$i>=$end;$i--){
        $array[]['year'] = $i;
    }
    return $array;
}

немесе array_reverse пайдаланып, массивіңізді қайтарыңыз

function FetchYears($type){
    $start = 1901;
    $end = date("Y");
    for($i=$start;$i<=$end;$i++){
        $array[]['year'] = $i;
    }
    return array_reverse($array);
}
1
қосылды
function FetchYears($type){
    $start = date("Y");
    $end = 1901;
    for($i=$start;$i>=$end;$i--){
        $array[]['year'] = $i;
    }
    return $array;
}
0
қосылды
function FetchYears($type){
    $start = date("Y");
    $end = 1901;
    for($i=$start;$i>=$end;$i--){
        $array[]['year'] = $i;
    }
    return $array;
}
0
қосылды
function FetchYears($type){
    $start = date("Y");
    $end = 1901;
    for($i=$start;$i>=$end;$i--){
        $array[]['year'] = $i;
    }
    return $array;
}
0
қосылды
for ($i = $end; $i >= $start; $i--) {
        $array[]['year'] = $i;
}

Тестті әлі тексерген емес, жұмыс істеу керек :)

0
қосылды
for ($i = $end; $i >= $start; $i--) {
        $array[]['year'] = $i;
}

Тестті әлі тексерген емес, жұмыс істеу керек :)

0
қосылды

Мұны істеудің ең қарапайым жолы - UTC (integer) пішімінде күндерді орналастыру.

$dates[$i] = $timestamp;

Содан кейін күндерді сұрыптау үшін PHP сұрыптау функциясын пайдаланыңыз.

sort($dates,SORT_NUMERIC);

Сіз керісінше рсортты пайдалана аласыз.

rsort($dates,SORT_NUMERIC);

Аяқтаған кезде, массивіңіз арқылы итерация және date() функциясын пайдаланып жасырын түрде кері оралыңыз.

echo (date('m-d-Y', $dates[$i]));
0
қосылды

Мұны істеудің ең қарапайым жолы - UTC (integer) пішімінде күндерді орналастыру.

$dates[$i] = $timestamp;

Содан кейін күндерді сұрыптау үшін PHP сұрыптау функциясын пайдаланыңыз.

sort($dates,SORT_NUMERIC);

Сіз керісінше рсортты пайдалана аласыз.

rsort($dates,SORT_NUMERIC);

Аяқтаған кезде, массивіңіз арқылы итерация және date() функциясын пайдаланып жасырын түрде кері оралыңыз.

echo (date('m-d-Y', $dates[$i]));
0
қосылды