トップページphp
1002コメント362KB

PHP質問・雑談スレ【初心者お断り(ROM歓迎)】©5ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん 転載ダメ©2ch.net2016/04/22(金) 08:58:11.47ID:???
PHP関する質問や雑談をするスレです。
初心者お断り(ROM歓迎)と書いてますが、初心者用のスレが用意されているからで、
難しい質問や話題をしなければいけないわけではありません。
PHPマニュアルの読み方を概ね理解していて、関数リファレンスが正しく読める方用のスレです。

PHP未導入の方や、手取り足取りが必要な初心者の方はくだスレへどうぞ。
【PHP】下らねぇ質問はここに書き込みやがれ 4
http://echo.2ch.net/test/read.cgi/tech/1457792733/

その他リンク
・PHPマニュアル
 https://secure.php.net/manual/ja/index.php
・コードテスト・貼り付け用
 http://ideone.com/
・プログラミングのお題スレ Part8 (求PHPer参戦)
 http://echo.2ch.net/test/read.cgi/tech/1444216746/

このスレで扱う話題
・PHPのコード,設定や設定値に関する質問
・常識的範囲内でのコードレビュー依頼・改良相談
・PECL,PEARに関する質問
・PHP新機能やPHP関連トレンドの話題
 (FWや非公式ライブラリの話題や特徴比較は良いが使い方から先の話題は専スレへ)
・PHPのバグ発見報告・公式に報告する前の検証依頼

このスレで扱わない話題
・直接関係ない○○特有の質問(専スレへ)
 (HH,エディタ,IDE,サーバ,OS,DB,SQL,FW,テンプレート,非公式ライブラリ・アプリケーション等)
・PHPの改造
0008nobodyさん2016/04/22(金) 18:10:00.61ID:???
ちょっとトリッキーな方法。

function f1(&$v)
{
 if(is_array($v)) {
  $v=array_filter($v,'f1');
  return !empty($v);
 }
 return $v%2!=0;
}
$a=array_filter($a,'f1');

まあ再帰呼び出しのために名前付き関数定義は避けられないんじゃないかね。
000922016/04/22(金) 18:20:03.65ID:???
>>8
ありがとうございます。
再帰だとループ文使わないでうまく出来るんですね。
だいぶすっきりしたコードに見えます。
情報処理試験の時にやったきりで、苦手なので避けてましたが、
この機会に勉強しなおしてみます。
お二方どうもありがとうございました。
0010nobodyさん2016/04/22(金) 18:23:57.51ID:???
>>7
たとえば例の "C" => 10 が "C" => ["b" => 10] だった場合、
結果は "C" => [] となるべきか、"C"ごと消えるべきかが不明確なままだと思うけどいいのかな。
001122016/04/22(金) 18:32:43.50ID:???
>>10
なるほど、同じ結果に見えた>>4さんと>>8さんのコードにそんなところで差があるとは思いもしませんでした。
不必要な情報は出来るだけ消したい感じなので、>>8さんのコードのほうがベターな感じですね。
コードをじっくり見比べてみて、両者の結果の違いをどうしてそうなるのか考えてみたいと思います。
的確なツッコミありがとうございました。
0012nobodyさん2016/04/22(金) 18:37:20.06ID:???
>>11
その点での違いは empty判定だから、>>4 だって同等のことをして同じ結果を得られるようにできるよ。
0013nobodyさん2016/04/22(金) 18:40:47.13ID:???
>>8
http://melpon.org/wandbox/permlink/iNRlUflNSv8UudAP
0014nobodyさん2016/04/22(金) 18:46:44.41ID:???
補足 : http://php.net/manual/ja/function.array-filter.php
警告
配列の内容がコールバック関数内で変更された場合 (たとえば要素が追加されたり削除されたりなど) のこの関数の挙動は未定義です。
0015nobodyさん2016/04/22(金) 18:46:46.81ID:???
そういえばPHP7で内部構造変わったんだったな
こりゃひでえw
001682016/04/22(金) 18:47:54.16ID:???
あちゃー
やっぱトリッキーなことはやるもんじゃないね。
すまん
0017nobodyさん2016/04/22(金) 18:48:35.81ID:???
もともと、たまたまそれらしく動いていただけであって、PHPは何も悪くない
001882016/04/22(金) 18:56:24.83ID:???
要素の追加削除はそうだろうけど、要素の中身の変更なら配列ポインタに影響無いと思ってたが、そうじゃないのね。
新しいリファレンスだと
> 配列の内容がコールバック関数内で変更された場合
だけど、おれの手元の古いリファレンスだと
> コールバック関数によって配列自身を変更することはできません
になってて、ちょっとニュアンスが違うようにも思えるが、実装が変わったということなのか、最初から読み誤りだったのか、さて。
0019nobodyさん2016/04/22(金) 18:56:40.17ID:???
ちなみに、同じ問題を抱えてはいるけれど
> 再帰呼び出しのために名前付き関数定義は避けられないんじゃないかね。
についてだけでいえばこう書ける。

<?php
$f = function (&$v) use (&$f) {
if(is_array($v)) {
$v=array_filter($v,$f);
return !empty($v);
}
return $v%2!=0;
};

$a = ["A" => ["a" => 1, "b" => 2], "B" => ["a" => 1, "b" => 2],
"C" => 10, "D" => ["E" => ["a" => 1, "b" => 2], "F" => ["a" => 1, "b" => 2]]];
print_r($a);
$a=array_filter($a,$f);
print_r($a);

くだ質で十分な内容のように思うけどな。
002082016/04/22(金) 18:59:17.03ID:???
そういや foreach内で配列要素の unset ってなんとなく避けてたんだけど、これはおkなのかな?
この辺の挙動についてどっかに明記されてる?

つか ID 出ないの面倒くさいね。
0021nobodyさん2016/04/22(金) 20:03:53.34ID:???
連番のインデックス欠けが不都合な時は論理削除に留めておくべきってぐらい。
ハッシュテーブルなら問題ないんでないー。
0022nobodyさん2016/04/22(金) 21:14:02.83ID:???
>>21
配列に対する操作を行ってる最中に配列を変更するという点で >>14 の状況と似てると思うんだけど、やっていいとか悪いとかの明確な記述って見たことある?
例えば次以降で回ってくるはずだった要素を unset したらどうなるかとか、要素を追加したらどうなるかとか、実験的に確認はしてるけど仕様の裏付けが無ければ >>13 の二の舞になる。
そこら辺怖いから、どうしてもループ中で配列の変更を行いたい場合はその配列そのものを foreach するんじゃなく、配列の array_keys を foreach してお目当ての配列を添え字アクセスするようにしたりしてるけど。
0023nobodyさん2016/04/23(土) 00:27:00.66ID:???
http://ja.stackoverflow.com/questions/5770/php-foreach-%E3%81%AE%E5%86%85%E9%83%A8%E6%8C%99%E5%8B%95%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

5.x系までのお話
0024nobodyさん2016/04/23(土) 03:24:34.89ID:???
>>1>>1以外になんか書いたのかな。
あの流れで立てたんだから回答者のどれかなんだろうけれど。
0025nobodyさん2016/04/23(土) 09:09:36.34ID:???
>>23
うは、大分分かりづらいなw
でもわざわざそういう実装にしてるということは、foteach内でのよくある要素の追加削除には対応するという意思があるんだろうから、バージョンアップしてもその動作は保証されると見ていいのかな。
読み応えあった。ありがとう。

>>24
おれはこのスレの 8 と他いくつかで、あっちのスレでは一番たくさん反対してた者だが、
あの手のやつはスレを立てるだけ立ててロクに書かない書けないやつだと思うよ、どの板にもいるように。
いまこのスレでやってることだって分散させずあっちのスレで充分だし、内容だって webprog ですらないからな。
あっちで httpd の設定が云々言ってる方がよほど webprog の話題だろう。
傾向の違う充分なボリュームが出るなら住み分けには賛成だが、安易に分離して人が多ければ進む議題が放置されるのはかんべん。
0026nobodyさん2016/04/23(土) 11:14:52.95ID:???
向こうはこっちにあったころのオリジナルのスレの雰囲気じゃないから、
嫌う人が出てもしょうがない。
テンプレ削りすぎたせいもあるんだろうが、正直脱線しすぎ。
数人のサポセンになってて今の向こうは読む気すらおきないってのが正直なところ。
このスレがオリジナル踏襲してるかというと全然違うけどね。
もう2chでやること自体だめっぽいな。
0027nobodyさん2016/04/23(土) 12:26:11.75ID:???
ム板にスレ立てたくせにレベルが低すぎて馬鹿にされる一方のペチパー
0028nobodyさん2016/04/23(土) 17:05:06.63ID:???
>>26
ということは少なくともこのスレは不要だったってことだよね
0029nobodyさん2016/04/23(土) 17:57:37.94ID:???
別にオリジナルを意識したわけじゃないですしおすし
0030nobodyさん2016/04/23(土) 17:59:03.79ID:???
ちなみに今くだスレでやってるのは
手取り足取りスレ化してるし
誘導も出来ない一部荒らし回答者のオナニー
0031nobodyさん2016/04/23(土) 21:34:38.12ID:???
>>30
お前が誘導してやればいいんじゃね?
なんでやらないの?
0032nobodyさん2016/04/24(日) 05:17:57.29ID:???
>>22
foreachの最中に、コンテナを変更したら、たいていの言語ではバグる。
Ruby, Python も参照(シャローコピー)を持ちまわっているから

Rubyでは、freezeで変更不可にできる。
Pythonでは、タプルが変更不可
0033nobodyさん2016/04/24(日) 09:30:18.83ID:???
とくにバグってないようだけど、>>4は参照持ちまわってるんじゃないの?
0034nobodyさん2016/04/24(日) 10:18:57.03ID:???
>>33
php ではうまく動いてるけどそれは仕様として明確になってるのか、それともたまたまなのか、って話だよ
0035nobodyさん2016/04/24(日) 11:25:55.69ID:???
仕様として明確になってるかどうかは件のリンクでもわかるとおりで、
じゃあPHP7ではどうなのかというのは元回答が追記されてるのでそっち読むといいよ。
http://stackoverflow.com/questions/10057671/how-does-foreach-actually-work/14854568#14854568
0036nobodyさん2016/04/24(日) 11:51:50.46ID:???
>>35
それは仕様じゃなくて実装の話じゃない?
どういう仕様に基づいてそう実装されてるかじゃなく、こう実装されてるからこう動くってことを言ってるように見えるけど。
だから副作用的な挙動で説明してるんじゃないのかな。
仕様ってもっと端的に、foreach内で配列を変更していいor悪いとかいう話で。

英語得意じゃないから、読み取れてないだけというなら指摘してくれ。
0037nobodyさん2016/04/24(日) 11:54:23.05ID:???
>>36
>>25の人じゃないってことでいいのかな。
翻訳版にも書かれてるとおり、バージョン依存の挙動調査に過ぎないよ。
0038nobodyさん2016/04/24(日) 12:01:12.77ID:???
あーごめん、おれは >>25 だよ。
バージョン依存の挙動調査ということは、仕様としては未定義だから使うべきではないって判断になる?
おまえならどうする?
0039nobodyさん2016/04/24(日) 12:05:47.50ID:???
この回答のコードは PHP 5.6.4 で動作させ確認を行っています。
なお、PHP 7 以降については、zval の構造などが変わりますので、一部の特殊な挙動は同様に動作しなくなる可能性があります。(実際に「イテレーション中の内部配列ポインタの変更」などでの一部の挙動が変わっているのを確認しています。)

翻訳版にもこう書かれているというのに。

ループ内で要素数の変更を行うコーディングはしないようにしてるよ。
要素の変更は普通に参照なりkey経由で行うけれど。(array_filter内で変更することとこれとは違うからね)
0040nobodyさん2016/04/24(日) 12:43:43.26ID:???
>>39
> 翻訳版にもこう書かれているというのに。
いやさ、おれは最初から実装じゃなく仕様を聞いてるんだってばさ。
ようするに仕様としては未定義なんだよな?
もちろん実装から解説したこの記事は大いに参考になったけどさ。

> ループ内で要素数の変更を行うコーディングはしないようにしてるよ。
やっぱそうなるよね。そこはおれも同じだ。
array_filter の事情と違うことも分かってるつもりだよ(仕様としても書かれてたし)。
0041nobodyさん2016/04/24(日) 12:48:50.55ID:???
>>40
仕様としては明言されてないね。
誤解されてると困るけど >>23 は俺じゃないのであしからず。
0042nobodyさん2016/04/24(日) 12:51:57.25ID:???
俺って言ってもわからんわな。 >>13 とか >>17 とか >>19 が俺。>>10>>24 もそうだけど。
0043nobodyさん2016/04/24(日) 13:01:46.90ID:???
いやいや、どれが誰かなんて証明しなくていいw
今のところそういう必要のある流れじゃないでしょ
0044nobodyさん2016/04/24(日) 13:15:20.86ID:???
後方互換があるに越したことはないけど、
メジャーバージョンが変われば今までのプログラムは動かないと考えて、
新しい対処をするのがベターだろう。どの言語でお。
0045nobodyさん2016/04/25(月) 04:08:32.95ID:???
Java, JS, Ruby, Python ほぼすべての言語で、
ループ中にコンテナをいじるとバグる

そういうプログラミングをしていると、
もし内部的に、Javaのような、parallel for などで並行処理にしようとしても使えない
0046nobodyさん2016/04/25(月) 06:19:24.84ID:???
コンテナを「いじる」のいじるは何をさしてんの?
0047nobodyさん2016/04/25(月) 07:27:35.20ID:???
一般論としてはコンテナなら要素の追加削除くらいなんじゃないの。
ソートみたいな並べ替えも含むかな。

php については >>35 の php7 のケースによれば、要素の更新の場合もクセがありそうだけど、これはコンテナをいじるというのとは違うように思う。
0048nobodyさん2016/04/25(月) 07:51:20.41ID:???
バグるというJSのコードが欲しい
0049nobodyさん2016/04/27(水) 11:12:52.89ID:???
>>22
ソレは違う話では
あと、
foreach( $list as $key=>$val)  でいいでしょ
0050nobodyさん2016/04/27(水) 11:16:53.40ID:???
.... 俺が勘違い 上はなかったことに
0051nobodyさん2016/04/28(木) 01:54:25.30ID:???
JSじゃバグらないってことでよろしい?
0052nobodyさん2016/04/29(金) 14:00:02.56ID:???
WPというか、phpの問題かもしれないが、
ウインドウサイズを認識した分岐ができるようになってほしい。
ソースレベルでも入・出力を振り分けたい。
0053nobodyさん2016/04/29(金) 21:33:55.15ID:???
これは初心者でいいんだよね >>1
0054nobodyさん2016/04/30(土) 10:22:33.78ID:???
>>52
出来るから。勉強不足すぎるわ。デバイス判定、画面サイズ判定普通に出来るから。
おまえの問題でしかないだろバカ
0055nobodyさん2016/04/30(土) 16:45:00.93ID:???
>>54
これも初心者でしょう。>>1 は何をやっているのか
0056nobodyさん2016/05/02(月) 16:06:53.55ID:???
>>54
ブラウザから情報貰えばもちろんサーバ側で処理の分岐はできるが、
PHPだからできる/できないという話ではない
0057nobodyさん2016/05/02(月) 16:16:17.97ID:???
>>56
いや、PHPではできないよ
0058nobodyさん2016/05/02(月) 17:12:11.72ID:???
ド素人ばっかじゃねーかw
0059nobodyさん2016/05/03(火) 15:51:39.24ID:???
玄人さんちーっす
0060nobodyさん2016/05/03(火) 17:36:59.96ID:???
>>1がまじめにスレを管理してればこうはならなかった。
立て逃げするとたいていこうなるもんだ。
0061nobodyさん2016/05/04(水) 22:22:25.80ID:???
お前が悪い
人のせいにすんなクズ
0062nobodyさん2016/05/05(木) 03:09:23.48ID:???
いやいや、このスレできるまでの流れを見てそんなこと言えるってすごいな。
0063nobodyさん2016/05/05(木) 10:27:02.73ID:???
おれはすごい
0064nobodyさん2016/05/07(土) 20:09:13.75ID:???
PHP7の話でもしようぜ
0065nobodyさん2016/05/07(土) 22:51:52.05ID:???
なにそれ?w
0066nobodyさん2016/05/08(日) 11:09:22.46ID:???
PHP7の高速化って三菱みたいなよかった計測結果を中央値のように公表してるな
まぁパフォーマンスが向上してるのは確かだけども正直期待ハズレ
HHのほうがだいぶパフォーマンスは上だな
0067nobodyさん2016/05/08(日) 11:22:56.94ID:???
HHVMはES6やTypeScriptに良い所を飲み込まれて消えゆくCoffeeScript、という立ち位置
そもそも静的解析や速度が重要ならPHPが選択肢に上がる訳がない
適当に書けて適当に動けばいいって人間が使うんだから
0068nobodyさん2016/05/08(日) 12:53:48.77ID:???
LLの中じゃ頭1つ抜けてるだけPHPの速度で十分だろ
問題はセキュリティとスケーラビリティだな
後者はある程度克服出来るにしても
PHPだけの問題ではなくWebのセキュリティはスカスカな傾向にあるし
しっかり作りこまれて穴があればプッシュ通知で即座に自動更新されるようなFWがあれば最高なんだが
Webでそこまでやるのはまだ難しい
0069nobodyさん2016/05/09(月) 11:07:30.24ID:???
>>67
> そもそも静的解析や速度が重要ならPHPが選択肢に上がる訳がない
その論法でいくと、世のhogeコンパイラのほとんどが意味の無いものということになるが
0070nobodyさん2016/05/20(金) 09:08:45.44ID:???
いま一番簡単なフレームワークって何ですか?
パスワードでログインしたら、ほぼ静的なコンテンツを表示する
という簡単なサイトを構築したいのです
動的な部分はログインだけなので出来るだけ簡単なのがいいです
0071nobodyさん2016/05/20(金) 10:17:30.10ID:???
>>70
BASIC認証にしたら?
0072nobodyさん2016/05/20(金) 10:56:50.01ID:???
BASIC認証には殺意を覚える
0073nobodyさん2016/05/24(火) 05:56:46.42ID:???
簡単さは処理速度に比例すると思っていいよ
処理速度が遅いものほどお世話がすぎるので簡単に出来るし
処理速度が早いものほどコードを多く書かないといけないので面倒といえる
0074nobodyさん2016/05/25(水) 11:44:53.96ID:???
php.ini を直接編集できない環境

出力の文字コードの自動的な変換は
mb_http_output("SJIS");
ob_start("mb_output_handler");
で出来るけど、入力の自動的な変換は どうやってやればいいの?

mb_http_input("SJIS");
ini_set("mbstring.encoding_translation","on");
としてみたけどダメだった
0075nobodyさん2016/05/26(木) 15:26:25.65ID:???
> 関数リファレンスが正しく読める方用のスレです。
0076nobodyさん2016/05/28(土) 19:22:23.17ID:???
PHP上級試験を取得したら転職に有利かな?
0077nobodyさん2016/05/29(日) 16:41:08.97ID:???
PHPの変態仕様を理解するテストなんて受けても敬遠されるで
0078nobodyさん2016/06/03(金) 18:47:32.56ID:???
・・・と初級落ちたカスが申しております。
0079nobodyさん2016/06/10(金) 20:21:24.34ID:???
あんな試験受けちゃう恥ずかしいやついたのかw
0080nobodyさん2016/06/13(月) 12:30:02.52ID:???
落ちたこともあるよ
0081nobodyさん2016/06/28(火) 14:48:22.91ID:???
session_register()って最近じゃ使わないみたいだけど
みんなどうやってセッションしてるの?
$_SESSION に直接ぶっこんでるの?
0082nobodyさん2016/06/29(水) 14:28:16.85ID:???
session_register 5.4で削除
$HTTP_SESSION_VARS 非推奨
これ見て$_SESSION以外を使うという選択肢にたどりついたなら
初心者からやり直しだなぁ
0083nobodyさん2016/06/29(水) 15:47:56.59ID:???
>>82
ほんとこれな
PHPerってひとこと余計なこと多いよな
マウンティング大好き種族
0084nobodyさん2016/06/29(水) 16:29:27.37ID:???
>>1ぐらい読めよ
雑魚はム板でシコシコやってろ
0085nobodyさん2016/06/29(水) 22:55:19.98ID:???
PHPDocの質問だけど
ある関数で入力を書くとき
明確にパラメータがあるときは @param でいいけど
グローバル変数($_SESSIONなど) を使ってるときに
それをうまいこと明示する方法はありますか?
0086nobodyさん2016/06/30(木) 13:20:30.40ID:???
>>85
引数で貰うようにすれば問題ない
0087nobodyさん2016/06/30(木) 14:40:14.41ID:???
>>86
前提条件を覆すなよ低能
0088nobodyさん2016/06/30(木) 15:10:55.49ID:???
>>87
関数内で$_SESSIONを使うようなゴミよりましですが
0089nobodyさん2016/06/30(木) 17:08:54.44ID:???
聞いたことには答えず、聞いてないことばかり答えやがって
ほんとゴミ共にはうんざりさせられるわ
0090nobodyさん2016/06/30(木) 18:46:37.08ID:???
マニュアルを探すこともできないのか
https://www.phpdoc.org/docs/latest/index.html
0091852016/06/30(木) 18:51:18.49ID:???
>>90
ありがとう
@uses を使えばいいの?
0092nobodyさん2016/07/01(金) 03:22:15.95ID:???
>関数内で$_SESSION
オブジェクト指向でやれ
0093nobodyさん2016/07/01(金) 12:21:33.28ID:???
>>92
クラス内で$_SESSION参照するようにしました
0094nobodyさん2016/07/01(金) 13:00:43.01ID:???
コンストラクタの引数にしろよw
0095nobodyさん2016/07/12(火) 18:59:38.75ID:fbJA+QlH
Parse error: syntax error, unexpected '['
上記のエラーが出ます。
該当行は下記です。すみませんが解決方法を教えていただけませんか。

$statuses = $toa->get('statuses/home_timeline', ['count' => '20']);
0096nobodyさん2016/07/12(火) 19:01:10.31ID:fbJA+QlH
95です、すみません、スレ違いでした。失礼しました。
0097nobodyさん2016/07/21(木) 00:56:54.84ID:xr3YoYIn
最新のRaspbianでApache2+php5環境を作ったつもりなんですが、うまく動きません。
phpは一応有効で例えばphpinfo();なんかは正しく動いているようです。
そして行頭の<?phpから他の行頭の?>までのブロックの中は正しく動いているみたいなんですが、

普通のhtmlの中に<?php>print($var);?>と書いた部分が正しく動かなくて、
print($var);?>がそのまま表示されます。
何がいけないんでしょうか?教えて下さい
0098972016/07/21(木) 01:28:11.46ID:???
short_open_tag = On でOKでした。
0099nobodyさん2016/07/21(木) 19:00:00.44ID:???
変数が存在したら代入
$unko = isset($a) ? $a : $unko;
をなんかかっこよく書く方法あったよね?
0100nobodyさん2016/07/21(木) 19:10:26.34ID:eZpumwmi
ほんとくだらない質問なんだけど

$json という変数があったとき、第一印象で中身は何だと思う?

・JSON文字列
・JSON文字列をデコードして出てきたオブジェクト
・JSON文字列を格納してあるファイル名
・JavaScript有効フラグ
0101nobodyさん2016/07/21(木) 19:18:56.23ID:???
>>99
if(isset($a)) $unko=$a;

でなけりゃエルビス演算子
0102nobodyさん2016/07/21(木) 20:00:49.19ID:???
かっこ良くってこれのこといってんか?
>(expr1) ? (expr2) : (expr3) という式は、式1 が TRUE の場合に 式2 を、 式1 が FALSE の場合に 式3 を値とします。
>PHP 5.3 以降では、三項演算子のまんなかの部分をなくすこともできるようになりました。 式 expr1 ?: expr3 の結果は、expr1 が TRUE と同等の場合は expr1、 それ以外の場合は expr3 となります。
0103nobodyさん2016/07/21(木) 20:02:33.39ID:???
102がエルビスな
php7には??なんてのがあるけど
0104nobodyさん2016/07/21(木) 20:49:17.27ID:???
>>101-103
ありがとう
エルビスかっこいいよね
01051002016/07/22(金) 11:53:45.74ID:9kPL7vfa
ほんとくだらない質問なんだけど

ログファイルを出力するとき、ログファイル名は
機能ごとに分けてる? それとも起動ファイルごとにわけてる?
それとも全部ひとつに出力しちゃってる?

まあ必要に応じてマージやソートやグレップすればいいだけだけど
0106nobodyさん2016/07/24(日) 22:34:50.55ID:???
OSのロガーを使えば、良いのでは?

別個にやると、ログローテーションなど考えるのが、面倒
0107nobodyさん2016/07/25(月) 13:46:02.16ID:???
monologでも使えば?
0108nobodyさん2016/07/26(火) 08:23:29.20ID:???
>>105
通常ログ、エラーログ、メモリログをそれぞれ日付ごとに分けて出力してる

エラーログにはIDがついてて、エラーが起きる度にIDを発行し、
画面に表示するエラーメッセージにそのIDをくっつけているので、
それを報告してもらえばスタックトレースが追えるようになってる。

ログを残す日時は定義ファイルで自由に設定できて、
その日数を超えると自動で削除される。
■ このスレッドは過去ログ倉庫に格納されています