abonnement Unibet Coolblue Bitvavo
pi_51065723

cd niet bijgeleverd

Als je vragen hebt over PHP/MySQL, dan zit je hier goed met een vaste kliek guru's en een groot aantal regelmatige bezoekers. Beperk je vragen niet tot "hij doet het niet" of "hij geeft een fout" - onze glazen bol is kapot en we willen graag van je weten wát er niet lukt en wélke foutmelding je precies krijgt


1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
43, 44,
45


  • PHP Dataverwerking
  • Officiële PHP website
  • PHP Documentatie
  • MySQL Reference Manual
  • Yet Another PHP Faq
  • PHP Cheat Sheet
  • PHP5 Power Programming - boek met uitleg over OOP, Pear, XML, etc


  • W3Schools PHP
  • W3Schools SQL

    Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP
  • The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_51065744
    Ik wilde graag weten wat is sneller.

    fgets
    fread

    Heb zelf getest maar kon niet vinden welke nu echt sneller was
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_51067199
    quote:
    Op maandag 2 juli 2007 18:24 schreef Chandler het volgende:
    Ik wilde graag weten wat is sneller.

    fgets
    fread

    Heb zelf getest maar kon niet vinden welke nu echt sneller was
    Het zijn twee verschillende functies; fgets() leest per regel (tot de \n dus) en fread() leest een willekeurig aantal bytes in. Aangezien fgets() alles wat ie leest moet verwerken en fread() simpelweg een countertje ophoogt, is die laatste functie theoretisch het snelst

    Maar in de praktijk gebruik je ze dus voor verschillende doeleinden
      maandag 2 juli 2007 @ 19:19:13 #4
    136730 PiRANiA
    All thinking men are atheists.
    pi_51067831
    tvpeetje
    pi_51068085
    quote:
    Op maandag 2 juli 2007 19:04 schreef JeRa het volgende:

    [..]

    Het zijn twee verschillende functies; fgets() leest per regel (tot de \n dus) en fread() leest een willekeurig aantal bytes in. Aangezien fgets() alles wat ie leest moet verwerken en fread() simpelweg een countertje ophoogt, is die laatste functie theoretisch het snelst

    Maar in de praktijk gebruik je ze dus voor verschillende doeleinden
    Klopt, maar zie graag de meest snelle methode om bv een 10KB bestand uit te lezen.. met een hoop enters..
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_51068149
    quote:
    Op maandag 2 juli 2007 19:25 schreef Chandler het volgende:

    [..]

    Klopt, maar zie graag de meest snelle methode om bv een 10KB bestand uit te lezen.. met een hoop enters.. :D
    1
    2
    3
    <?php
    $data 
    file_get_contents('bestand.dat');
    ?>
    pi_51068331
    Ik draai nog PHP 4.2.1

    PHP 4 >= 4.3.0, PHP 5

    welke versie wordt tegenwoordig vel gebruikt? op PHP 5 na dan?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_51068410
    quote:
    Op maandag 2 juli 2007 19:30 schreef Chandler het volgende:
    Ik draai nog PHP 4.2.1

    PHP 4 >= 4.3.0, PHP 5
    Shame on you
    1
    2
    3
    4
    5
    6
    7
    <?php
    $data 
    ''
    while (!
    feof($fp))
    {
        
    $data .= fread($fp16384);
    }
    ?>
      maandag 2 juli 2007 @ 21:44:39 #9
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51074069
    1
    2
    3
    4
    function file_get_contents($file)
    {
        return implode('',file($file));
    }


    tvp
    phluphy for president!
    pi_51083305
    maar zijn deze functies sneller dan fgets?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 3 juli 2007 @ 07:50:15 #11
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51083329
    quote:
    Op dinsdag 3 juli 2007 07:46 schreef Chandler het volgende:
    maar zijn deze functies sneller dan fgets?
    Geen idee ff benchmark bouwen .
    phluphy for president!
      dinsdag 3 juli 2007 @ 08:12:04 #12
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51083458
    quote:
    Op dinsdag 3 juli 2007 07:50 schreef WyriHaximus het volgende:

    [..]

    Geen idee ff benchmark bouwen ;).
    Het resultaat:
    quote:
    wyrihaximus@localhost:~> php benchmark.php
    Did 1000000 file_get_contents_fake() in 30.380990028381 seconds
    Did 1000000 file_get_contents_fake2() in 34.327764987946 seconds
    wyrihaximus@localhost:~> php benchmark.php
    Did 1000000 file_get_contents_fake() in 30.18455696106 seconds
    Did 1000000 file_get_contents_fake2() in 33.193086862564 seconds
    wyrihaximus@localhost:~> php benchmark.php
    Did 1000000 file_get_contents_fake() in 29.584892988205 seconds
    Did 1000000 file_get_contents_fake2() in 36.115298986435 seconds
    wyrihaximus@localhost:~> php benchmark.php
    Did 1000000 file_get_contents_fake() in 29.321064949036 seconds
    Did 1000000 file_get_contents_fake2() in 32.658441066742 seconds
    wyrihaximus@localhost:~> php benchmark.php
    Did 1000000 file_get_contents_fake() in 28.93373298645 seconds
    Did 1000000 file_get_contents_fake2() in 34.299740076065 seconds
    wyrihaximus@localhost:~>
    De code die ik gebruikt heb:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    <?php
    function file_get_contents_fake($file)
    {
        return 
    implode('',file($file));
    }

    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<1000000;$i++)
    {
        
    file_get_contents_fake('/home/wyrihaximus/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake() in $time secondsn";

    function 
    file_get_contents_fake2($file)
    {
        
    $data ''
        
    $fp fopen($file'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fp16384);
        }
        
    fclose($fp);
        return 
    $data;
    }

    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<1000000;$i++)
    {
        
    file_get_contents_fake2('/home/wyrihaximus/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake2() in $time secondsn";
    ?>
    phluphy for president!
    pi_51083762
    quote:
    Op dinsdag 3 juli 2007 08:12 schreef WyriHaximus het volgende:

    [..]

    Het resultaat:
    [..]

    De code die ik gebruikt heb:
    [ code verwijderd ]
    En het geheugengebruik?
    Too old to Trick or Treat, too young to die
      dinsdag 3 juli 2007 @ 09:07:48 #14
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51084030
    quote:
    Op dinsdag 3 juli 2007 08:45 schreef doka het volgende:

    [..]

    En het geheugengebruik?
    Goeie eens kijken .
    phluphy for president!
    pi_51084892
    en als je nu eens van

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function file_get_contents_fake2($file)
    {
        $data = ''; 
        $fp = fopen($file, 'r');
        while (!feof($fp))
        {
            $data .= fread($fp, 16384);
        }
        fclose($fp);
        return $data;
    }


    de 16384 weghaalt, hier hoef je toch geen 'grootte' aan te koppelen? en anders eens gewoon op 1024 zet (meeste scripts bevatten toch niet langere regels dan 1024 chars :@)
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 3 juli 2007 @ 09:50:59 #16
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51084912
    quote:
    Op dinsdag 3 juli 2007 09:07 schreef WyriHaximus het volgende:

    [..]

    Goeie eens kijken .
    Hmm dat is toch tricky best om het echt netjes te doen Nu maar ff simpel gedaan:
    quote:
    76664 bytes
    Did 1000000 file_get_contents_fake() in 26.938782930374 seconds: 79156 bytes
    Did 1000000 file_get_contents_fake2() in 33.518908977509 seconds: 79688 bytes
    Code:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    <?php
    function file_get_contents_fake($file)
    {
        return 
    implode('',file($file));
    }

    function 
    file_get_contents_fake2($file)
    {
        
    $data ''
        
    $fp fopen($file'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fpfilesize($file));
        }
        
    fclose($fp);
        return 
    $data;
    }

    echo(
    memory_get_usage() . " bytesn");

    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<1000000;$i++)
    {
        
    file_get_contents_fake('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake() in $time seconds: " memory_get_usage() . " bytesn";

    $mmem memory_get_usage();
    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<1000000;$i++)
    {
        
    file_get_contents_fake2('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake2() in $time seconds: " memory_get_usage() . " bytesn";
    ?>
    quote:
    Op dinsdag 3 juli 2007 09:50 schreef Chandler het volgende:
    en als je nu eens van
    [ code verwijderd ]

    de 16384 weghaalt, hier hoef je toch geen 'grootte' aan te koppelen? en anders eens gewoon op 1024 zet (meeste scripts bevatten toch niet langere regels dan 1024 chars )
    Ja moet wel: http://nl2.php.net/fread nu ff met filesize neer gezet
    phluphy for president!
    pi_51085128
    Tip:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    function file_get_contents_fake2($file)
    {
        
    $data ''
        
    $fp fopen($file'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fpfilesize($file));
        }
        
    fclose($fp);
        return 
    $data;
    }
    ?>


    veranderen in

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    function file_get_contents_fake2($file)
    {
        
    $data  '';
        
    // $xSize = filesize($file); 

        
    $fp fopen($file'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fp1024);
        }
        
    fclose($fp);
        return 
    $data;
    }
    ?>


    want waarom lees je steeds stukken uit die net zo groot zijn als 'het bestand zelf'? :D (ik doel nu even op tekst gebasseerde bestanden!
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 3 juli 2007 @ 10:07:21 #18
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51085277
    quote:
    Op dinsdag 3 juli 2007 10:00 schreef Chandler het volgende:
    Tip:
    [ code verwijderd ]

    veranderen in
    [ code verwijderd ]

    want waarom lees je steeds stukken uit die net zo groot zijn als 'het bestand zelf'? (ik doel nu even op tekst gebasseerde bestanden!
    quote:
    76476 bytes
    Did 1000000 file_get_contents_fake() in 26.639196157455 seconds: 78992 bytes
    Did 1000000 file_get_contents_fake2() in 29.833640098572 seconds: 79524 bytes
    Scheelt wel idd (Het is trouwens een text bestandje met 3 speties er in )
    phluphy for president!
      dinsdag 3 juli 2007 @ 10:21:30 #19
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51085569
    Dit is met een bestandje van 84K (a.k.a. de HTMl van deze pagina:
    quote:
    80772 bytes
    Did 100000 file_get_contents_fake() in 45.338598966599 seconds: 123716932 bytes
    Did 100000 file_get_contents_fake2() in 23.763649940491 seconds: 938117048 bytes
    Did 100000 file_get_contents() in 14.183950901031 seconds: 938117152 bytes
    Deze keer ook file_get_contents() gedaan om goed te kunnen vergelijken .
    phluphy for president!
    pi_51086301
    @WyriHaximus; wat zijn speties?

    Helaas kan ik geen file_get_contents gebruiken maaruh heb je de nieuwe source ook? even checken op mijn systeem... (heb mijn lappie mee naar m'n werk )
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 3 juli 2007 @ 10:53:29 #21
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51086379
    quote:
    Op dinsdag 3 juli 2007 10:50 schreef Chandler het volgende:
    @WyriHaximus; wat zijn speties?

    Helaas kan ik geen file_get_contents gebruiken maaruh heb je de nieuwe source ook? even checken op mijn systeem... (heb mijn lappie mee naar m'n werk )
    Doe eens een gok .
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <?php
    function file_get_contents_fake($file)
    {
        return
    implode('',file($file));
    }

    function
    file_get_contents_fake2($file)
    {
        
    $data = '';
        
    $fp = fopen($file, 'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fp, 1024);
        }
        
    fclose($fp);
        return
    $data;
    }

    echo(
    memory_get_usage() . " bytesn");

    $mtime = explode(' ',microtime());
    $time_start = $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents_fake('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime = explode(' ',microtime());
    $time_end = $mtime[0] + $mtime[1];
    $time = $time_end - $time_start;

    echo
    "Did " . $i . " file_get_contents_fake() in $time seconds: " . memory_get_usage() . " bytesn";

    $mmem = memory_get_usage();
    $mtime = explode(' ',microtime());
    $time_start = $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents_fake2('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime = explode(' ',microtime());
    $time_end = $mtime[0] + $mtime[1];
    $time = $time_end - $time_start;

    echo
    "Did " . $i . " file_get_contents_fake2() in $time seconds: " . memory_get_usage() . " bytesn";

    $mmem = memory_get_usage();
    $mtime = explode(' ',microtime());
    $time_start = $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime = explode(' ',microtime());
    $time_end = $mtime[0] + $mtime[1];
    $time = $time_end - $time_start;

    echo
    "Did " . $i . " file_get_contents() in $time seconds: " . memory_get_usage() . " bytesn";
    ?>
    phluphy for president!
    pi_51086493
    Scheelt nogal wat qua geheugen.

    Zou je die laatste nog een keer kunnen doen? Maar dan met

    $data .= fread($fp, 1024); in file_get_contents_fake2
    Too old to Trick or Treat, too young to die
      dinsdag 3 juli 2007 @ 11:00:22 #23
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51086574
    quote:
    Op dinsdag 3 juli 2007 10:57 schreef doka het volgende:
    Scheelt nogal wat qua geheugen.

    Zou je die laatste nog een keer kunnen doen? Maar dan met

    $data .= fread($fp, 1024); in file_get_contents_fake2
    Die laatste was al met dat . Zal ff fake3 ook maken .
    phluphy for president!
    pi_51086688
    quote:
    Op dinsdag 3 juli 2007 11:00 schreef WyriHaximus het volgende:
    Die laatste was al met dat . Zal ff fake3 ook maken .
    Maar wat zijn speties nou???? en ik wacht even je update af, kun je ook de pagina die jij gebruikt even linken? zodat ik dezelfde 'test' scripting heb?
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      dinsdag 3 juli 2007 @ 11:09:56 #25
    84926 WyriHaximus
    Release the hounds smithers!
    pi_51086867
    quote:
    Op dinsdag 3 juli 2007 11:04 schreef Chandler het volgende:

    [..]

    Maar wat zijn speties nou???? en ik wacht even je update af, kun je ook de pagina die jij gebruikt even linken? zodat ik dezelfde 'test' scripting heb?
    Spaties .

    Mijn resultaat:
    quote:
    87512 bytes
    Did 100000 file_get_contents_fake() in 45.875488042831 seconds: 108920596 bytes
    Did 100000 file_get_contents_fake2() in 22.202512979507 seconds: 923320712 bytes
    Did 100000 file_get_contents_fake3() in 13.83746099472 seconds: 358186172 bytes
    Did 100000 file_get_contents() in 13.45986199379 seconds: 358186220 bytes
    Code:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    <?php
    function file_get_contents_fake($file)
    {
        return 
    implode('',file($file));
    }

    function 
    file_get_contents_fake2($file)
    {
        
    $data ''
        
    $fp fopen($file'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fp1024);
        }
        
    fclose($fp);
        return 
    $data;
    }

    function 
    file_get_contents_fake3($file)
    {
        
    $data ''
        
    $fp fopen($file'r');
        while (!
    feof($fp))
        {
            
    $data .= fread($fpfilesize($file));
        }
        
    fclose($fp);
        return 
    $data;
    }

    echo(
    memory_get_usage() . " bytesn");

    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents_fake('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake() in $time seconds: " memory_get_usage() . " bytesn";

    $mmem memory_get_usage();
    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents_fake2('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake2() in $time seconds: " memory_get_usage() . " bytesn";

    $mmem memory_get_usage();
    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents_fake3('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents_fake3() in $time seconds: " memory_get_usage() . " bytesn";

    $mmem memory_get_usage();
    $mtime explode(' ',microtime());
    $time_start $mtime[0] + $mtime[1];

    for(
    $i=0;$i<100000;$i++)
    {
        
    file_get_contents('/home/HAARLEM/cjk/little.tmp');
    }

    $mtime explode(' ',microtime());
    $time_end $mtime[0] + $mtime[1];
    $time $time_end $time_start;

    echo 
    "Did " $i " file_get_contents() in $time seconds: " memory_get_usage() . " bytesn";
    ?>


    Me test bestandje:
    http://junk.wyrihaximus.net/little.tmp
    phluphy for president!
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')