most used words

Întrebări legate de conectarea la baze de date MySQL prin intermediul PHP

Moderatori: Zamolxe, Moderatori


Pirahna
Senior Member
Mesaje: 5985
Membru din: Dum Aug 22, 2004 2:04 am
Localitate: la birou
Contact:

Mesajde Pirahna » Joi Aug 05, 2010 10:09 pm

$visitors = 'a:2:{i:0;s:6:"dragos";i:1;s:6:"mascka";}a:2:{i:0;s:6:"mascka";i:1;s:6:"member";}a:2:{i:0;s:6:"mascka";i:1;s:6:"dragos";}';

[php]
<?php
$explode = explode('}',$visitors); array_pop($explode);
$visitors = array();
foreach($explode as $temp)
{
$temp .= '}';
$visitors = array_merge($visitors,unserialize($temp));
}
$fresh_array = array_count_values($visitors);
array_multisort($fresh_array, SORT_NUMERIC, SORT_DESC);
?>[/php]

Si apoi un foreach($fresh_array as $username => $count) unde iti faci treaba.
|

Avatar utilizator
socu
Senior Member
Mesaje: 470
Membru din: Mie Apr 22, 2009 11:05 pm
Localitate: Marghita

Mesajde socu » Joi Aug 05, 2010 10:18 pm


Avatar utilizator
Mascka
Senior Member
Mesaje: 1376
Membru din: Sâm Oct 01, 2005 8:00 am
Localitate: Braila
Contact:

Mesajde Mascka » Joi Aug 05, 2010 10:22 pm

or

Pirahna
Senior Member
Mesaje: 5985
Membru din: Dum Aug 22, 2004 2:04 am
Localitate: la birou
Contact:

Mesajde Pirahna » Joi Aug 05, 2010 10:24 pm

[php]
<?php
$time_start = microtime(true);

for($i=0;$i<1000;$i++)
$visitors .= $visitors2;

$explode = explode('}',$visitors); array_pop($explode);
$visitors = array();
foreach($explode as $temp)
{
$temp .= '}';
$visitors = array_merge($visitors,unserialize($temp));
}
$fresh_array = array_count_values($visitors);
array_multisort($fresh_array, SORT_NUMERIC, SORT_DESC);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Did my job in $time seconds\n";
?>
[/php]

$visitors2 = stringul ala
Sunt cate 3 elemente x 1000 = 3000.

1.53 secunde.

Alte observatii ?
|

Avatar utilizator
socu
Senior Member
Mesaje: 470
Membru din: Mie Apr 22, 2009 11:05 pm
Localitate: Marghita

Mesajde socu » Joi Aug 05, 2010 10:29 pm

pentru 3000 de randuri scriptul meu consuma 455248 bytes al tau 1344648.

1344648 / 455248 = 3 => scriptul tau e de 3 ori mai prost.

alte comentarii geniule?

(@Mascka - sper ca ai folosit ce trebuie si nu te-ai lasat influentat de impresiile unora)

Avatar utilizator
Mascka
Senior Member
Mesaje: 1376
Membru din: Sâm Oct 01, 2005 8:00 am
Localitate: Braila
Contact:

Mesajde Mascka » Joi Aug 05, 2010 10:56 pm

or

Pirahna
Senior Member
Mesaje: 5985
Membru din: Dum Aug 22, 2004 2:04 am
Localitate: la birou
Contact:

Mesajde Pirahna » Joi Aug 05, 2010 11:45 pm

Ultima oară modificat Vin Aug 06, 2010 12:44 am de către Pirahna, modificat 1 dată în total.
|

Pirahna
Senior Member
Mesaje: 5985
Membru din: Dum Aug 22, 2004 2:04 am
Localitate: la birou
Contact:

Mesajde Pirahna » Vin Aug 06, 2010 12:41 am

Ultima oară modificat Vin Aug 06, 2010 8:18 pm de către Pirahna, modificat 1 dată în total.
|

Avatar utilizator
socu
Senior Member
Mesaje: 470
Membru din: Mie Apr 22, 2009 11:05 pm
Localitate: Marghita

Mesajde socu » Vin Aug 06, 2010 12:51 am


Pirahna
Senior Member
Mesaje: 5985
Membru din: Dum Aug 22, 2004 2:04 am
Localitate: la birou
Contact:

Mesajde Pirahna » Vin Aug 06, 2010 1:00 am

|

Avatar utilizator
Mascka
Senior Member
Mesaje: 1376
Membru din: Sâm Oct 01, 2005 8:00 am
Localitate: Braila
Contact:

Mesajde Mascka » Vin Aug 06, 2010 4:47 pm

or

Pirahna
Senior Member
Mesaje: 5985
Membru din: Dum Aug 22, 2004 2:04 am
Localitate: la birou
Contact:

Mesajde Pirahna » Vin Aug 06, 2010 8:30 pm

|


Înapoi la “MySQL”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 4 vizitatori