За последние 24 часа нас посетили 17255 программистов и 1626 роботов. Сейчас ищут 1499 программистов ...

include

Тема в разделе "Прочие вопросы по PHP", создана пользователем NIKO, 18 июл 2006.

  1. NIKO

    NIKO Активный пользователь

    С нами с:
    10 фев 2006
    Сообщения:
    655
    Симпатии:
    0
    Адрес:
    Armenia
    PHP:
    1. <?
    2. $date = date("d.m.Y");
    3. $file="$date.txt";
    4. if(is_file($file)){
    5. include($file);
    6. }
    7. else {
    8. $x = explode(".",$date);
    9. $x[0] = date("d") - 1;
    10. $file=$x[0].".".$x[1].".".$x[2].".txt";
    11. include($file);
    12. }
    13. ?>
    можно сделать более хороший скрипт, который считовал и месяца (знаю плохо обяснил :) )(наверное вы поняли, что делает скрипт :) ) ?
     
  2. Shtogrin

    Shtogrin Активный пользователь

    С нами с:
    21 июн 2006
    Сообщения:
    25
    Симпатии:
    0
    Адрес:
    Kiev
    strtotime("-1 day")
     
  3. NIKO

    NIKO Активный пользователь

    С нами с:
    10 фев 2006
    Сообщения:
    655
    Симпатии:
    0
    Адрес:
    Armenia
    2Shtogrin
    Т.е. в место
    $x = explode(".",$date);
    $x[0] = date("d") - 1;
    $file=$x[0].".".$x[1].".".$x[2].".txt";
    просто моно
    strtotime("-1 day")
     
  4. Shtogrin

    Shtogrin Активный пользователь

    С нами с:
    21 июн 2006
    Сообщения:
    25
    Симпатии:
    0
    Адрес:
    Kiev
    Нет. Сначала посмотреть что делает strtotime, потом написать что-то вроде этого
    $file=date("d.m.Y",strtotime("-1 day"))
     
  5. NIKO

    NIKO Активный пользователь

    С нами с:
    10 фев 2006
    Сообщения:
    655
    Симпатии:
    0
    Адрес:
    Armenia
    Ну получается так
    PHP:
    1. <?
    2. $date = date("d.m.Y");
    3. $file="$date.txt";
    4. if(is_file($file)){
    5. include($file);
    6. }
    7. else {
    8. $file=date("d.m.Y",strtotime("-1 day"));
    9. $file .= ".txt";
    10. include($file);
    11. }
    12. ?>
     
  6. Shtogrin

    Shtogrin Активный пользователь

    С нами с:
    21 июн 2006
    Сообщения:
    25
    Симпатии:
    0
    Адрес:
    Kiev
  7. woodfairy

    woodfairy Активный пользователь

    С нами с:
    26 июн 2006
    Сообщения:
    23
    Симпатии:
    0
    небольшой комментарий к первому скрипту, просто так, на будущее. Вот эта строка
    PHP:
    1. <?php
    2. $x[0] = date("d") - 1;
    3. ?>
    может дать, например, 0, если сегодня первое число. Тогда нужно и число другое и месяц.
    надо учитывать все условия и мелочи, если уж беретесь писать
     
  8. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда

    mktime нормально все обработает

    date('d.m.Y',mktime(0,0,0,date('m'),date('d')-1,date('Y'))) выдаст правильную дату если будет 1 число месяца, т.е. 1 января выдаст 31 декаюря прошлого года.

    спросите почему - потому что unixtime rulezz!
     
  9. simpson

    simpson Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    1.650
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    а еще проще будет, наверно:
    PHP:
    1. <?php
    2. $today = date('d.m.Y');
    3. $yesterday = date('d.m.Y', time()-86400);
    4. $file = (is_file($today . '.txt')) ? $today . '.txt' : $yesterday . '.txt';
    5. /* ... after party ... */
    6. ?>
     
  10. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    мдя ... не догадался ...
     
  11. NIKO

    NIKO Активный пользователь

    С нами с:
    10 фев 2006
    Сообщения:
    655
    Симпатии:
    0
    Адрес:
    Armenia
    :) ну да