Re: (Most frequently..) Corrected and added note

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



buzon@xxxxxxxxxxxxxxxxxxxxxxx wrote:
I notice the syntaxis error in my previous message
array_slice(array_keys($hash_frequencywords,0,20)) must be array_slice(array_keys($hash_frequencywords),0,20);

But the error continues generating me an "array enter" to my first array. The error occurs in the following piece of code:

for ($i=0; $i<count($arr_frequencywords); $i++)
  {
  $str_thisword = $arr_frequencywords[$i];
  echo "$i:$str_thisword  ";
  $hash_frequencywords[$str_thisword]++;
  }


Break it down to make sure each step does what you want.

// store in $arr_frequencyids all different words
for($i=0; $i<count($arr_phrase); $arr_phrase) {
	array_push($arr_frequencyids,explode(" ",$arr_phrase[$i]));
}


Does that do what you want and give you an array in $arr_frequencyids ?


<<<
for ($i=0; $i<count($arr_frequencywords); $i++)
>>>

You're using a different variable name here. Where does this one come from?


// Yeh i used the word 'long' twice
// so it would appear at the top of the list.
$string = "long piece of string that is really long";

$words = explode(' ', $string);

// print_r($words);

Once you get it to that stage, you can actually just use a php function to count everything.

See http://www.php.net/manual/en/function.array-count-values.php

print_r(array_count_values($words));

If you want the top 5:

$counted_words = array_count_values($words);
$flipped_array = array_flip($counted_words);
asort($flipped_array);
print_r(array_slice($flipped_array, 0, 5, true));


You could probably do it without flipping the array (see http://www.php.net/array_flip) but it makes sorting easier.


--
Postgresql & php tutorials
http://www.designmagick.com/

--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux