回答編集履歴

1

追記に関して

2019/07/09 03:59

投稿

mikkame
mikkame

スコア5036

test CHANGED
@@ -23,3 +23,47 @@
23
23
  まあ一番簡単なのは非同期処理をせずに処理する事ですね。
24
24
 
25
25
  別タブでダウンロードさせれば、画面のロックもなく、そのうちDLされるんじゃないですかね
26
+
27
+
28
+
29
+
30
+
31
+ ----
32
+
33
+
34
+
35
+ 追記に関して
36
+
37
+
38
+
39
+
40
+
41
+ nohup して、非同期で処理しているので、ファイルが出来上がる前にブラウザにレスポンスをしている。
42
+
43
+ もちろん、ファイルが出来上がる前にPHPの処理が進むので、File not found at path (ファイルが見つかりません)となる。
44
+
45
+
46
+
47
+ ```
48
+
49
+ while (!file_exists(Storage_path.'/sample.pfd')) {
50
+
51
+ sleep(1);
52
+
53
+ }
54
+
55
+
56
+
57
+ ```
58
+
59
+
60
+
61
+ みたいにファイルが生成されるまで待てばいいと思うのだが、そしたら非同期で処理する意味がないですね。
62
+
63
+
64
+
65
+
66
+
67
+ 結論として、やりたい事に対する非同期で処理するメリットがございません。
68
+
69
+ どうしても非同期でやりたい場合は、pdfの作成が終わったらメール通知してダウンロードしてもらうぐらいがちょうどいいと思います