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

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

Thread Status:
Not open for further replies.
  1. brain[pillow]

    brain[pillow] Active Member

    Joined:
    7 Nov 2008
    Messages:
    7
    Likes Received:
    103
    Reputations:
    74
    На локалхосте получилось, а на платном хостинге ругается "500 - Internal Server Error"
     
  2. Корвин

    Корвин Elder - Старейшина

    Joined:
    26 Feb 2007
    Messages:
    256
    Likes Received:
    31
    Reputations:
    3

    Замечено, что часто при установке скрипта возникает описанная в заголовке ошибка. Это вызвано тем, что в файле .htaccess присутствует команда, запрещенная к использованию на данном сервере. (с)


    знач не судьба, меняй хостинг, или пиши в тех поддержку чтобы увеличили этот параметр
     
    #6522 Корвин, 3 Dec 2008
    Last edited: 3 Dec 2008
  3. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    Я прекрасно знаю как и на чем написан пых :) Думаю ты меня понял, я имел ввиду похожую внутреннюю реализацию.

    upd:
    залез в сорцы пыха - действительно не завязаны друг на друга (хотя впринципе ничео не мешало бы это сделать).
    Но факт о скорости работы остается фактом :)
    Так что господа - не стоит говорить того, в чем на 100% не уверен. Если в инете может никтоне обратит внимания, то в реальной жизни это мжет вылится в нехорошие последствия и поставиь вашу репутацию как профессионала (и\или эксперта) под сомнение.
     
    #6523 VDShark, 3 Dec 2008
    Last edited: 3 Dec 2008
  4. Helios

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

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Эм.. вы с какого дерева на какой кактус е... упали?
    foreach всегда работал и будет работать с оригинальными данными. Жругой вопрос, что в конструкции
    PHP:
    foreach($array as $key=>$value)
    переменная $value передается по значению, а не по ссылке. В результате этого ее изменение на исходные данные в массиве не влияет. При этом
    присвоить в первичном массиве значение по ключу никто не мешает. Т.е.
    PHP:
    $array[$key] = 'новое значение';
    будет работать всегда.

    Также возможно передать значение по ссылке, тогда его можно будет изменять напрямую:
    PHP:
    foreach($array as $key => &$value)
    {
        
    $value 'новое значение';
    }
    PS: foreach и array_map никаких родственных связей не имеют.
     
    1 person likes this.
  5. Architek86

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

    Joined:
    20 Feb 2008
    Messages:
    80
    Likes Received:
    1
    Reputations:
    0
    Запутался с регуляркой.. с помощью пхп надо найти в коде HTML часть кода, вида <table width="550" border="0" cellpadding="0" cellspacing="0" id="tablaMotores">любые символы, в том числе и переводы строк, пробел, табуляция</table>
     
  6. Vid0k

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

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    PHP:
    <table(.+)id=\"tablaMotores\">(.+)<\/table>
    вроде должна работать)
     
  7. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    (.+) - любые символы
    и добавь модификатор m
     
  8. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Сожержимое файла index.html по адресу http://нужный_сайт/index.html

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
    <html><head><head>
    <body>
    <table width="550" border="0" cellpadding="0" cellspacing="0" id="tablaMotores">любые символы, в том числе и переводы строк, пробел, табуляция</table>
    
    <table width="550" border="0" cellpadding="0" cellspacing="0" id="tablaMotores">1, 
    круть
    &, 
    ???
    <><><><>><><<><>
    +_*%^#$#$
    
    </table>
    </body></html> 
    
    PHP:
    <?
    $file file_get_contents('http://нужный_сайт/index.html');
    preg_match_all('/<table(.*)width(.*)border(.*)cellpadding(.*)id(.*)>(.*?)<\/table>/s',$file,$frazes); 
    //print_r ($frazes);// Раскоментировать, если есть желание посмотреть содержимое всего массива
    echo $frazes[0][0];
    ?>
     
    #6528 Pashkela, 3 Dec 2008
    Last edited: 3 Dec 2008
  9. Architek86

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

    Joined:
    20 Feb 2008
    Messages:
    80
    Likes Received:
    1
    Reputations:
    0
    Ыы, Pashkela, тебе огромное спасибо - только твой пример шаблона сработал! :)
    Всё гениальное просто...
     
  10. Vid0k

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

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    А ты хоть проверил другие варианты?!

    http://regexpr.ru/?pattern=%2F%3Ctable%28.%2B%29id%3D%5C%22tablaMotores%5C%22%3E%28.%2B%29%3C%5C%2Ftable%3E%2F&subject=%3Chtml%3E%3Chead%3E%3Chead%3E%0D%0A%3Cbody%3E%0D%0A%3Ctable+width%3D%22550%22+border%3D%220%22+cellpadding%3D%220%22+cellspacing%3D%220%22+id%3D%22tablaMotores%22%3E%EB%FE%E1%FB%E5+%F1%E8%EC%E2%EE%EB%FB%2C+%E2+%F2%EE%EC+%F7%E8%F1%EB%E5+%E8+%EF%E5%F0%E5%E2%EE%E4%FB+%F1%F2%F0%EE%EA%2C+%EF%F0%EE%E1%E5%EB%2C+%F2%E0%E1%F3%EB%FF%F6%E8%FF%3C%2Ftable%3E%0D%0A%0D%0A%3Ctable+width%3D%22550%22+border%3D%220%22+cellpadding%3D%220%22+cellspacing%3D%220%22+id%3D%22tablaMotores%22%3E1%2C+%0D%0A%EA%F0%F3%F2%FC%0D%0A%26%2C+%0D%0A%3F%3F%3F%0D%0A%3C%3E%3C%3E%3C%3E%3C%3E%3E%3C%3E%3C%3C%3E%3C%3E%0D%0A%2B_%2A%25%5E%23%24%23%24%0D%0A%0D%0A%3C%2Ftable%3E%0D%0A%3C%2Fbody%3E%3C%2Fhtml%3E+


    и для регулярок есть отдельная тема

    пс извините ссылку пришлось так вставить а иначе она резалась=(
     
  11. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Кроме какого деления?
    Вариант?:
    PHP:

    $dig 
    rand(100000,999999);

    print 
    substr($dig0, (int) strlen($dig)/2).".".substr($dig, (int) strlen($dig)/2);

     
    _________________________
  12. .:nbd:.

    .:nbd:. Elder - Старейшина

    Joined:
    27 Jul 2008
    Messages:
    97
    Likes Received:
    27
    Reputations:
    1
    А можно так:
    PHP:
    <?php
    $dig
    =mt_rand(100000000,999999999)."\n";
    $dig[4]='.';
    echo 
    $dig*1;
    ?>
    Умножение на единицу нужно для преобразования строки в число, можно заменить на "+0" или "+1" (не суть важно, число все равно останется случайным =) ), а можно иначе, но так короче. Только не пиши так никогда =).
     
  13. [х26]VОLАND

    [х26]VОLАND Elder - Старейшина

    Joined:
    7 Jun 2006
    Messages:
    513
    Likes Received:
    756
    Reputations:
    218
    Что за извращения? Про явное указание типов забыли?

    echo (int)$dig;
    echo (float)$dig;
     
    1 person likes this.
  14. .:nbd:.

    .:nbd:. Elder - Старейшина

    Joined:
    27 Jul 2008
    Messages:
    97
    Likes Received:
    27
    Reputations:
    1
    Не забыл =) Я же написал:
     
  15. Buffalon

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

    Joined:
    22 Mar 2008
    Messages:
    241
    Likes Received:
    34
    Reputations:
    8
    А зачем ты атк делаешь????А вот так тоже можно->
    echo (int)$dig . (float)$dig ;
     
    1 person likes this.
  16. [х26]VОLАND

    [х26]VОLАND Elder - Старейшина

    Joined:
    7 Jun 2006
    Messages:
    513
    Likes Received:
    756
    Reputations:
    218
    Я лишь привёл 2 разных примера для разных типов чисел.
     
    1 person likes this.
  17. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    semtler
    PHP:
    for ($i=1;$i<$max;$i++) echo "http://site.com/$i\r\n"
     
    _________________________
  18. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    for($i = 1; $i <= 77;$i++)
    echo 'http://site.ru/page/'.$i.'<br>';
     
    2 people like this.
  19. Doom123

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

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    <?
    $st = ''; #сайт
    $sk = ; #сколько
    $i=1;
    while($i<$sk+1)
    {
    echo $st.$i.'<br>';
    $i++;
    }
    ?>

    это быстрее =)
     
    2 people like this.
  20. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:
    <?
    $max 77;
    $site='http://site.com/';
    for (
    $i=1;$i<=$max;$i++) 
    {
    $rez "$site$i";
    echo 
    $rez "\r\n";
    }
    ?>
     
Thread Status:
Not open for further replies.