PDA

View Full Version : سوال: نوع داده در مای اس کیو ال + تکرار کلمه



sohail0098
سه شنبه 16 مهر 1392, 18:19 عصر
سلام
من دو تا سوال داشتم
1- اگه ما متن داشته باشیم که مثلا 5 پاراگراف باشه و بخایم اونو تو دیتا بیس ذخیره کنیم نوع داه مناسب برای این فیلد چی هست؟
2- من متن زیر رو دارم میخام تعداد تکرار کلمه hello رو تو متن بدست بیارم اگه میشه یه کد ساده برام بزارید

$str="asd f aaa hello hsdhf sgdf cli cfcoa hello hello jdggnc kgo ge hello dd hello"

AliRezaPro
سه شنبه 16 مهر 1392, 22:59 عصر
1 : TEXT
ببینید :

http://dev.mysql.com/doc/refman/5.0/en/string-type-overview.html
2 :

function get_word_counts($phrases) {
$counts = array();
foreach ($phrases as $phrase) {
$words = explode(' ', $phrase);
foreach ($words as $word) {
$word = preg_replace("#[^a-zA-Z\-]#", "", $word);
@ $counts[$word] += 1;
}
}
return $counts;
}

$phrases = array("asd f aaa hello hsdhf sgdf cli cfcoa hello hello jdggnc kgo ge hello dd hello");

$counts = get_word_counts($phrases);
arsort($counts);
print_r($counts);

mnvoh90
سه شنبه 16 مهر 1392, 23:10 عصر
یه روش دیگه برای سوال دوم:



preg_match_all('/hello/', $text, $matches, PREG_SET_ORDER);
echo(count($matches));

sohail0098
چهارشنبه 17 مهر 1392, 01:14 صبح
دست دوستان همگی درد نکنه لطف کردید
اینم از کد خودم که شبیه کد دوم هست

$string = 'hello aaaaaaaa hello asdasdasd hello sda hello';

preg_match_all('/.hello/', $string, $matches);
echo count($matches, COUNT_RECURSIVE).'<br />';
print_r($matches);