使用swoole多程序匯出csv檔案

2021-10-02 04:02:41 字數 1469 閱讀 2319

$start_time

=microtime

(true);

$max_num=5

;//程序數

$per_file

=100000

;//每個檔案匯出的記錄數

$process_pool

=array()

;for($i

=1;$i

<=

$max_num;$i

++)fwrite

($file

,chr

(0xef).

chr(

0xbb).

chr(

0xbf))

;//新增bom頭,防止亂碼

$head=[

'id'

,'name'

,'wechat_no'

,'fans_num'

,'create_time'];

fputcsv

($file

,$head);

//查詢資料

$offset=(

$current-1

)*$per_file

;$sql

="select id,name,wechat_no,fans_num,create_time from test limit $offset

,$per_file";

$stmt

=$conn

->

query

($sql);

$data

=$stmt

->

fetchall(2

);foreach

($data

as$k

=>

$row

)//斷開mysql 連線,關閉檔案

$conn

=null

;fclose

($file);

},true);

$pid

=$process

->

start()

;$process

->

write($i

);$process_pool

[$pid]=

$process;}

// 等待子程序結束,**資源

for($i=

1;$i<=

$max_num;$i

++)$end_time

=microtime

(true);

//計算總耗時

echo

sprintf

("use time:%.3f s\n"

,$end_time

-$start_time);

//將匯出的檔案裝入壓縮包當中

for($i=

1;$i<=

$max_num;$i

++)

swoole多程序任務

swoole發展很快版本迭代也很快,是彌補了php的缺點,提公升了php的效能,唯一的不足就是文件太差了點,很多想入門的人在官方文件並不能夠順利的進行學習。我也是開始研究swoole的一些知識,下面是總結的swoole多程序的一些知識點。swoole多程序例子1 單程序傳送10封郵件 start t...

Swoole多程序的實現

使用swoole多程序上傳檔案到網宿伺服器 created by phpstorm.user leeo date 2016 9 29 time 15 26 引入檔案上傳類include once filehandleclass.php obj fetch new filehandleclass wo...

Swoole 多程序 簡單示例

一 任務 向使用者先傳送郵箱驗證碼,然後向使用者傳送手機驗證碼。如果是單程序,需要等待郵箱驗證碼傳送完畢才能傳送手機驗證碼,存在一定的耗時。可使用多程序 乙個程序傳送郵箱驗證碼,另乙個程序傳送手機驗證碼。info array email 11111111 qq.com phone 135999999...