function Combination($sort, $num){ $result = $data = array(); if( $num == 1 ) { return $sort; } foreach( $sort as $k=>$v ) { unset($sort[$k]); $data = Combination($sort,$num-1); foreach($data as $row) { $result[] = $v.','.$row; } } return $result;}$starttime = explode(' ',microtime());$arr = array(1,2,3,4,5,6,7,8,9,1,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33);//这个是组合$res = Combination($arr,6);print_r($res);$endtime = explode(' ',microtime());$thistime = $endtime[0]+$endtime[1]-($starttime[0]+$starttime[1]);$thistime = round($thistime,3);echo "本网页执行耗时:".$thistime." 秒";
phpのエラー表示機能をオンにすると、 Fatal error:Allowed memory size of... と表示されます。 このようなエラー
メモリが足りません!
php に割り当てられたメモリが足りないと考えて、ini_set('memory_limit','500M') を試してください
正しく理解できているかわかりません
N select M 、許可されている場合、繰り返し値の場合は、毎回ランダムなキー名に対応する値を呼び出すだけです
繰り返し値が許可されていない場合は、shuffle() 関数を使用してランダムに配置し、最初の M 要素を直接取得します