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

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

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

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    у меня 2 вопроса по php
    Прочитал кучу инфы но до меня не дошло!
    1. Что такое class?
    2. Для чего нужны Сёкеты?
     
  2. w.u.n.

    w.u.n. Member

    Joined:
    13 Dec 2008
    Messages:
    40
    Likes Received:
    26
    Reputations:
    1
    класс это понятие из ООП, я думаю тебе еще рано)
    сокеты нужны для работы с сетью
     
  3. CrazyNight

    CrazyNight New Member

    Joined:
    6 Jan 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    php.su читал? Если читал и не дошло - трижды подумай, нужно ли тебе вообще это программирование.
     
  4. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    w.u.n.

    CrazyNight

    Это типа как в Microsoft Visual C++ 2008 Express Edition??
     
  5. w.u.n.

    w.u.n. Member

    Joined:
    13 Dec 2008
    Messages:
    40
    Likes Received:
    26
    Reputations:
    1
    Visual Studio это просто среда разработки
    http://ru.wikipedia.org/wiki/Класс_(программирование)
     
  6. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    Ну понятно что среда! Но она же работает по объектно-ориентированному программированию??
     
  7. Doom123

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

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    geforce O_O
    ты наверно перепутал и думаешь что Visual Studio предназначен только для языков с ООП... так вот это не так .... в этой среде ты просто пишеш код программы а компилятор скомлирует программу тоесть превратит твой код в asm .. и никакого отношения к ООП оно не имеет =)
     
  8. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    Можешь мне обьяснить для чего ооп вобще нужно?
     
  9. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Как вставить некоторую строку в середину (в текущую позицию указателя) файла без затирания имеющихся там данных (на которые указывает тек. указатель)?
    Условия: юзаем только один файл, не используем оперативн. память (массивы)

    Ну допустим есть файл строк:
    Code:
    576iuh
    jhgkjh
    jhgjhjh
    jhgjhhj
    9878687
    <-------- нужно вставить " hg788gjlо"
    [COLOR=Yellow]jhgfjhgjh[/COLOR] - затруться
    kjhh755
    kglh
    hgkjhj
    
    Это вообще возможно? если делать fputs($f,$s); то данные затираются на этом месте, а надо бы сдвинуть...
     
  10. w.u.n.

    w.u.n. Member

    Joined:
    13 Dec 2008
    Messages:
    40
    Likes Received:
    26
    Reputations:
    1
    стандартными средствами такое не реально
     
  11. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    -=lebed=-
    PHP:
    <?

    $tochange="jhgfjhgjh";
    $changeto=" hg788gjlо";

    $fr=fopen("file.txt""r");
    $fw=fopen("temp.txt","a");

    while(!
    feof($fr)){
        
    $line=fgets($fr,4096);
        if(
    $line==$tochange$line=$changeto;
        
    fwrite($fw,$line."\r\n");
    }
    copy("temp.txt","file.txt");
    unlink("temp.txt");
    fclose($fr);
    fclose($fw);

    ?>
    СОРРИ не заметил про один файл(((
     
    #7451 preda1or, 12 Jan 2009
    Last edited: 12 Jan 2009
  12. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Это так обязательно? Можно было бы символ переноса в данной строке заменить на \nТекст\n
     
    _________________________
  13. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    По моему вот так:
    PHP:
    fputs($f,$s."\r\n");
     
  14. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    -=lebed=-
    PHP:
    <?

    $tochange="jhgfjhgjh";
    $changeto=" hg788gjlо";
    $string="";
    $fr fopen("file.txt""r+");
    while(!
    feof($fr)){
        
    $line=fgets($fr,4096);
        
    $line=str_replace("\r","",$line);
        
    $line=str_replace("\n","",$line);
        
    $line=str_replace("\t","",$line);
        if(
    $line==$tochange$line=$insert."\r\n".$line;
        
    $string.=$line."\r\n";

    }
    fclose($fr);

    $fr fopen("file.txt""r+");
    fwrite($fr,$string);
    fclose($fr);

    ?>
     
    #7454 preda1or, 12 Jan 2009
    Last edited: 12 Jan 2009
  15. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    ну раз использовать только один файл и не использовать массивы, то например вот так:
    PHP:
    <?php
    $file 
    '1.txt';
    $a '9878687'//После чего вставить
    $b 'hg788gjlо'//Что вставить
    $open file_get_contents($file);
    file_put_contents($filestr_replace($a$a."\r\n".$b$open));

    ?>
     
  16. ntldr

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

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    как бы этот пример как и все выше загружает файл в оперативную память
     
    #7456 ntldr, 12 Jan 2009
    Last edited: 12 Jan 2009
  17. neval

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

    Joined:
    13 Dec 2006
    Messages:
    457
    Likes Received:
    116
    Reputations:
    23
    Или так? ))

    PHP:
    <?php
    $file 
    '1.txt';
    $a '9878687'//После чего вставить
    $b 'hg788gjlо'//Что вставить
    $open file_get_contents($file);
    file_put_contents($filestr_replace($a$a."\r\n".$b."\r\n"$open));

    ?>
     
    1 person likes this.
  18. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    я так понял что нельзя юзать просто массивы, а как ты выполнишь программу без использования оперативной памяти?o_O
     
  19. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Чтение файла это и подразумевает, без этого никак)
    Поэтому я лишь привёл более-менее вменяемый и простой пример.

    neval, не, там пустая строка образуется, если в конце перенос ставить)
     
    1 person likes this.
  20. ntldr

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

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    ну это понятно, просто у лебедя там написано было так. ну в принципе наверно так возможно, но только на ассемблере.

    а если файл очень большой можно читать его кусками
     
Thread Status:
Not open for further replies.