[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. daniel777

    daniel777 Elder - Старейшина

    Joined:
    8 Jul 2010
    Messages:
    517
    Likes Received:
    90
    Reputations:
    37
    Есть такой скрипт:
    PHP:
    <?php

    $count 
    "4"//сколько цифр

    for($i=0;$i<10000;$i){
    $it=$i++;
    echo 
    sprintf("%1$0".$count."d"$it)."\n";
    }

    ?>
    В переменную $count нужно вводить число, в зависимости от которого будет менятся количество итераций в цикле.
    Тоесть если 2 то 100, если 3 то 1000, если 4 то 10000, и так далее.
    Прошу посоветовать как решить эту проблему, или предложить более правильное решение.
     
    1 person likes this.
  2. 5w17ch3r

    5w17ch3r Member

    Joined:
    1 Dec 2008
    Messages:
    79
    Likes Received:
    11
    Reputations:
    0
    Вот. Вроде то что требовалось (возможно говнокод :) )
    PHP:
    $count $c "1";
    for (
    $i 0$i $c$i++)
        
    $count .= 0;

    for (
    $i 0$i $count$i++) {
        
    /* Code here */
    }
     
    2 people like this.
  3. Skofield

    Skofield Elder - Старейшина

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    Можно использовать ту же функцию sprintf:
    PHP:
    for ($i 0$i "1".sprintf("%0".$count."d"""); $i++)
     
    1 person likes this.
  4. Failure

    Failure Elder - Старейшина

    Joined:
    21 Sep 2008
    Messages:
    179
    Likes Received:
    46
    Reputations:
    16
    PHP:
    <?php
    //
    $count 3;// 1000 itr
    $count pow(10$count);
    for(
    $i=0;$i<$count;$i++)
        echo 
    'ololo';
    не?
     
    2 people like this.
  5. meGun

    meGun New Member

    Joined:
    2 Feb 2012
    Messages:
    12
    Likes Received:
    3
    Reputations:
    5
    Если таблица не сложная, думаю, стоит до внесения изменений конвертнуть объект в обычный массив ассоциативный и редактирование производить уже не методами данного класса, а стандартными функциями php, а после приводить обратно для записи. Вероятно, отработает нормально.

    Еще вариант, сначала разделять файл на количество частей, равное доступному объему оперативной памяти и работать по кускам, а после сливать в одно.

    Самое правильное, наверное, вносить из файла информацию во временную таблицу в базу данных и обрабатывать средствами БД, а после выгружать обратно.

    Если валится из за объема - разделить на части, то же при записи - можно разделить на куски момент записи файлов, а после силами консоли склеить файлы в один, например.

    ООП в PHP - прожорливая на память штука.

    Прогонять через базу данных - самое правильное, как мне кажется - там управление памятью лучше, нежели PHP, у которого она динамична и бесконтрольна.
     
    #20005 meGun, 7 Feb 2012
    Last edited: 7 Feb 2012
    1 person likes this.
  6. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    а склеить файлы не представляется возможным?
     
  7. meGun

    meGun New Member

    Joined:
    2 Feb 2012
    Messages:
    12
    Likes Received:
    3
    Reputations:
    5
    еще вариант - конвертируй в CSV или как они там, и работай просто, как с табличкой ;) , очень просто, но уже не совсем Excel.
     
  8. nikotin49

    nikotin49 New Member

    Joined:
    20 Jul 2011
    Messages:
    57
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте подскажите пожалуйста как сделать чтобы картинка шла с самого низа страницы и до самого конца по правому краю. я в html не силен. у меня только вот так выходит: http://www.weekendappointment.com/2.php
     
  9. Skofield

    Skofield Elder - Старейшина

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    nikotin49, это тема для вопросов связанных с языком веб-программирования php. Тема касательно языка разметки гипертекста находится рядом, вот http://forum.antichat.ru/thread43254.html

    И да, ответ на ваш вопрос:
    HTML:
    <marquee align="right" height="100%" direction="up"> <img src="http://ab-w.net/images/Chrome21.jpg" /> </marquee>
    
    Надеюсь модератор перенесет в правильный раздел.
     
    #20009 Skofield, 7 Feb 2012
    Last edited: 7 Feb 2012
  10. 0o Chris o0

    0o Chris o0 New Member

    Joined:
    16 Oct 2011
    Messages:
    142
    Likes Received:
    1
    Reputations:
    0
    Всем привет. Подскажите, как получить случайное число из нескольких заданных. Например: 1, 6, 45, 96, 183. Из них получить одно.
     
  11. Skofield

    Skofield Elder - Старейшина

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    0o Chris o0 mt_rand() ?
     
  12. 0o Chris o0

    0o Chris o0 New Member

    Joined:
    16 Oct 2011
    Messages:
    142
    Likes Received:
    1
    Reputations:
    0
    mt_rand(min, max). Тут диапазон чисел, а мне надо из заданных.
     
  13. Skofield

    Skofield Elder - Старейшина

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    0o Chris o0 добавьте значения в массив и с помощью mt_rand выведите случайное значение из указанных вами.

    Интересно, а чем такой вариант плох?
     
    #20013 Skofield, 7 Feb 2012
    Last edited: 7 Feb 2012
  14. 0o Chris o0

    0o Chris o0 New Member

    Joined:
    16 Oct 2011
    Messages:
    142
    Likes Received:
    1
    Reputations:
    0
    Хм... Первое, что мне пришло в голову - так и сделать, но я думал есть лучше варианты.
     
  15. daniel777

    daniel777 Elder - Старейшина

    Joined:
    8 Jul 2010
    Messages:
    517
    Likes Received:
    90
    Reputations:
    37
    PHP:
    <?php

    $array 
    = array(1,6,45,96,183);//массив с числами

    $rand=rand(0count($array)-1);//индекс случайного массива

    echo $array[$rand];//вывод на экран

    ?>
     
    1 person likes this.
  16. Skofield

    Skofield Elder - Старейшина

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    daniel777, спасибо, что продублировали ответ в виде кода, но обязательно это делать, это ведь элементарно?
     
    1 person likes this.
  17. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    Code:
    $array = array(1,6,45,96,183);//массив с числами 
    echo $array[array_rand($array)];
     
    5 people like this.
  18. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    мне нужно парсить ответ БД сайта через sql -inj

    например запрос http://site.ru/page.php?id=1+union+select+1,2,user()--+

    выведет на странице к примеру root@localhost далее буду другими запросами выводить таблици колонки и тд, которые естественно будут выводится вместо root@localhost,
    как бы организовать чтобы парсить только ответ БД учитывая что сайты естественно будут разные и код в них тоже, у кого какие идеи?
     
  19. 0o Chris o0

    0o Chris o0 New Member

    Joined:
    16 Oct 2011
    Messages:
    142
    Likes Received:
    1
    Reputations:
    0
    Спасибо. Еще 1 вопрос. Есть 10 диапазонов чисел, как определить в какой именно входит заданное число?
     
  20. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    in_array(), array_search()
     
    1 person likes this.
Thread Status:
Not open for further replies.