За последние 24 часа нас посетили 58774 программиста и 1780 роботов. Сейчас ищут 1111 программистов ...

Нетривиальный парсинг строк

Тема в разделе "Прочие вопросы по PHP", создана пользователем KING_PHP, 27 май 2015.

  1. KING_PHP

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

    С нами с:
    18 апр 2015
    Сообщения:
    154
    Симпатии:
    3
    Адрес:
    Волгоград
    В базе это содержание.
    Код (PHP):
    1. [Type] [Item] [Extra] [Описание][permgroup] [vip?lifetime=2592000] [NULL] [Vip во всех мирах на 30 суток]
    [item] [276@Крутой меч@Подарок от yourproject.com#16:1] [NULL] [Меч]Как мне поделить item На часть до ?(@, #) и после + перевести секунды в минуты, часы, дни (2592000=30 суток)?
     
  2. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Re: Cодержание

    секунды в минуты - можно и элементарно делением.
    по разделению: explode();
     
  3. KING_PHP

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

    С нами с:
    18 апр 2015
    Сообщения:
    154
    Симпатии:
    3
    Адрес:
    Волгоград
    Я уже пока дожидался обшарил весь интернет и сделал :D
    Код (PHP):
    1. $pizza  = "vip?lifetime=2592000";
    2. $pieces = explode("?", $pizza);
    3. $perm0 = $pieces[0]; // piece1
    4. $perm1 = $pieces[1];
    5.  
    6.     echo "$perm0$perm1.";
    7.  
    вопрос в том как отделить в результате $perm1 lifetime от 2592000?
     
  4. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Re: Cодержание

    ну ёмаё, друг. Ты сейчас задал вопрос, на который сам же ответил в первой строчке своего кода. :)

    Добавлено спустя 22 секунды:
    во второй, прошу прощения.
     
  5. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    Re: Cодержание

    еще один explode только с '='
     
  6. KING_PHP

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

    С нами с:
    18 апр 2015
    Сообщения:
    154
    Симпатии:
    3
    Адрес:
    Волгоград
    Итог = vip?lifetime, 2592000.
    Ага круто.

    Добавлено спустя 11 минут 21 секунду:
    Re: Нетривиальный парсинг строк
    200 раз ошибся но всё же сделал. осталось форматировать время. Как перевести время в часы, дни, мне нужна функция...?
    Код (PHP):
    1. <?
    2. $pizza  = "vip?lifetime=2592000";
    3. $pieces = explode("?", $pizza);
    4.  
    5. $perm0 = $pieces[0]; // piece1
    6. $perm1 = $pieces[1];
    7. $perm = explode("=", $perm1);
    8. $perm1 = $perm[0];
    9. $perm2 = $perm[1];
    10.     echo "$perm0$perm1$perm2";
    11.  
     
  7. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Код (PHP):
    1. <?php
    2.  
    3. $time = 25924534;
    4. $month = floor( $time / 2592000 );
    5. $day = ( $time / 86400 ) % 30;
    6. $hour = ( $time / 3600 ) % 24;
    7. $min = ( $time / 60 ) % 60;
    8. $sec = $time % 60;
    9.  echo $month."\n".$day."\n".$hour."\n".$min."\n".$sec;
    10.  
    11. ?>
     
  8. KING_PHP

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

    С нами с:
    18 апр 2015
    Сообщения:
    154
    Симпатии:
    3
    Адрес:
    Волгоград
    спасибо, я не нашел :D