Зная движок этого форума, да и устройство его БД, могу сказать, что код, который вычислит средний возраст форумчан очень прост. На вскидку это может выглядеть так:
PHP код:
//процедуру подключения к БД пропускаю
$res = mysql_query("SELECT birthday_search FROM user"); while ($row = mysql_fetch_row($res)){ $diff[] = time() - get_unixtime($row[0]); }
echo intval((array_sum($diff)/count($diff))/31536000);
function get_unixtime($strtime){ preg_match_all("/(\d{4})-(\d{2})-(\d{2})/", $strtime, $arr, PREG_SET_ORDER); return mktime(0, 0, 0, get_normal($arr[0][2]), get_normal($arr[0][3]), $arr[0][1]); }
function get_normal($str){ return substr($str, 0, 1) == "0" ? substr($str, 1, 1) : $str; }
попробовал у себя на форуме. получилось средний возраст 31 год.
Можно это было бы реализовать и средствами SQL, но я в нём не очень силён. Хотя, в виде зарядки для ума с утра пораньше можно было и попариться )))))
|