第二回 自作スクリプト発表会【PHP】at PHP
第二回 自作スクリプト発表会【PHP】 - 暇つぶし2ch92:>>65
08/11/26 22:59:01 .net
>>90-91
いやあの晒されると恥ずかしいですが。
特にそこ適当なんでw
URLリンク(jp2.php.net)
意味はマニュアルに書いてあるとおりです。
どっか動きがおかしいのを修正したいのか、改造したいのか、単純に意味がわからなかったのか、
コードが汚すぎて読みにくいって指摘なのか、PHPを覚えてみようと思ってるのか、
いったいどれでしょうか?
ふと思い出したけど、php.iniのerror_reportingを書き換えなくても、
----------------------------------------
<?php
error_reporting(0);  ←これ追加
----------------------------------------
だけでNoticeは出なくなると思います。


93:>>65
08/11/26 23:04:25 .net
超適当に説明しておくと・・・
まず、このスレのソースコードを見てみてください。
各レスが「<dt>~」って1行になってるのがわかると思います。
まず、$matchesにその各レスが入ります。
$matches[1]には、「"/^(\d*)/"」などの1番目のカッコの中身が入ります。
そんでもって、さらにそのレスに対してpreg_matchをすることによって、
レス番号とか名前とかを切り出してるんです。
$matches[1]をわざわざ$resって変数に入れてるのは特に意味はありません。


94:68
08/11/26 23:56:10 yZjcfnV8.net
>>92
有り難うございます。 確かに、URLリンク(jp2.php.net)
↓が書いてありました。 すみません。
>$matches[0] はパターン全体にマッチした文字列の配列
>$matches[1] は第 1 のキャプチャ用サブパターンにマッチした文字
> どっか動きがおかしいのを修正したいのか
動きは、ちゃんと動いてくれて感動しました。
>単純に意味がわからなかったのか、
はいそうです。
>PHPを覚えてみようと思ってるのか
そうです、これがメインで1行づつ読み解かしてもらってます。
> ふと思い出したけど、php.iniのerror_reportingを書き換えなくても、
> ----------------------------------------
> <?php
> error_reporting(0);  ←これ追加
> ----------------------------------------
> だけでNoticeは出なくなると思います。
有り難うございます。

95:nobodyさん
08/11/27 10:46:47 QDCpWLvT.net
俺はこれ
error_reporting(E_ALL);
面倒だけど変数をまとめて設定する癖がつくから後々楽だぞ

96:>>65
08/11/27 20:06:40 .net
>>95
僕も余裕があればデバッグ中はそうするように心がけてみます。
PHPしか知らないから、変数の宣言とか型とかいい加減な扱いするクセついちゃったなぁ。


97:nobodyさん
08/11/27 20:12:41 .net
開発機のphp.iniで設定しときゃいいじゃん

98:>>65
08/11/27 20:18:28 .net
>>97
そうですね。
他に何に使ってるわけでもないWeb鯖だし、それでいいと思います。
僕はいつも、↓みたいな感じでログを流しながら作業してます。
tail -f /apache/log/error_log
Windowsで似たようなことってできるのかなぁ。
Cygwinとか試してみよう。


99:nobodyさん
09/05/19 20:17:57 D1418Uic.net
【設置場所】 URLリンク(u9.getuploader.com)
【ソース】 URLリンク(u9.getuploader.com)
【プログラミング経験】 3ヶ月
【希望評価スタイル】 悪い部分を指摘して欲しい
【自分の性格】 またーり
【備考】
表示部分はJQUERYで、サーバーの部分はPHPで作りました。どうも保守性が悪いような気がするので、
悪い部分があったら指摘してほしいです。

100:nobodyさん
09/05/21 01:39:47 .net
悪い部分って?

101:nobodyさん
09/05/21 10:06:33 .net
>>99
HTMLのエスケープはPHP側でやったほうがいいよ
あとちゃんと見てないからよくわからんが、今HTTPヘッダで取ってくるログを判別してるみたいだけど、
それもPHP経由で重複したデータを取ってこないように。


102:nobodyさん
09/05/30 11:37:25 .net
>99
暇だから見てみるか。
とりあえず3秒見たところだが、enter.phpにXSSな。htmlspecialchars()かけろ。

103:nobodyさん
09/05/30 12:28:09 .net
load_namefile(&$a, $b)は、$aをそのまま返せばいい。参照渡しで値を返すと可読性が激しく低下する。返り値$iはcount($a)に等しいはずだ。
変数名が手抜きすぎる。$aとか$bとか$cとか$vとかなんの拷問だ。
append_namefile($name, $last_talk_time, $room_number)にするだけで10,000倍読みやすくなる。foreach()とかで使う一時変数も同じ。
「保守性の高いコード」はアーキテクチャが生むんじゃなくて、変数名やインデントなどのミクロな部分が生むんだ。神は細部に宿る。
$_POST["state"]での処理の振り分けは、明らかにifではなくcaseにすべき箇所。
名簿ファイルのロック処理が半端。flock()を信用するならbegin_lock()は不要。
信用しないならflock()が正常に動く事を前提としているbegin_lock()も同じく信用ならない事になるので意味がない。
信用しないならmkdirロックを使うべき。SQLiteかなんかを使ったほうが手っ取り早いが。
flock($fp, LOCK_UN)してはいけない。「鍵を開けた後、ファイルを閉める」までの間にファイルが破壊される。
単に閉じれば安全な形でロックが開放される。

104:nobodyさん
09/05/30 12:29:19 .net
メイン処理($_POST["state"]を見て実行される場所)のひとつひとつを関数ないしクラスにした方が、可読性が向上する。
意図をそのまま関数名にしろ。例えば最初のブロックは、そのまま読むと
「ロックを取り、ユーザー名簿を取得し、名簿に書いてある数字がいまの時刻より$_keep_time小さかったら名簿を削除し、名簿を再度書き出す」
わけだが、お前はトップレベルのコードを読んでる時はそうは思考しないだろ?
「長時間退席しているユーザーを蹴る」とか、そういう粒度でこの処理を見るはずだ。ならこの処理は「kick_afk_users()」と関数化すべきなんだ。
トップレベルでやってる処理は多岐に渡るんだから、詳細はいったん別の場所においておくべき。
kick_afk_users();
if($_POST["state"] == "enter"){
 enter_room();
}else if($_POST["state"] == "quit"){
 quit_room();
}else if($_POST["state"] == "sid"){
 if(!in_room($name)){
   enter_room();
 }
 rotate_log();
 add_talk();
とかなってれば、この部分をざっと見るだけでおおざっぱな処理の流れが見て取れるようになる。

105:nobodyさん
09/05/30 16:37:24 .net
>>103
99じゃないけど
> flock($fp, LOCK_UN)してはいけない。
これは以外だった。ちょっと調べてみよ。


106:
12/05/06 15:00:42.23 .net BE:81081942-PLT(12079)

  ∧_∧
  ( ・∀・)            人 ガッ
  (    つ―-‐-‐-‐-‐-‐○ <  >__Λ∩
  人 Y ノ.             V`Д´)/
  し(_)                  /  ←>>21

107:島本町で凄惨なイジメを受けて廃人になった方へ
14/08/09 16:53:26.10 eoXmXjRk.net
>大阪府三島郡島本町の小学校や中学校は、暴力イジメ学校や。
島本町の学校でいじめ・暴力・脅迫・恐喝などを受け続けて廃人になってしもうた僕が言うんやから、
まちがいないで。僕のほかにも、イジメが原因で精神病になったりひきこもりになったりした子が何人もおる。
教師も校長も、暴力やいじめがあっても見て見ぬフリ。イジメに加担する教師すらおった。
誰かがイジメを苦にして自殺しても、「本校にイジメはなかった」と言うて逃げるんやろうなあ。
島本町の学校の関係者は、僕を捜し出して口封じをするな
子供の時に受けた酷いイジメの体験は、一生癒えない深い傷になる
「暴力とイジメと口裏合わせと口封じ」の町やそういう町に巣食うヤクザ・チンピラ・ゴロツキ・不良・
いじめっ子・殺人鬼・ダニ・ノミ・シラミなどを監視して非難するのは暮らしやすい町を作るのに必要だ

108:nobodyさん
17/12/30 13:59:10.80 YhlYw6jg.net
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
AO0UH9L8HP

109:nobodyさん
19/05/09 02:21:04.26 HHcYDMUs.net
phpについて役立つ情報とか
スレリンク(tech板)
7H9

110:nobodyさん
23/09/25 03:18:49.75 .net
(||゚Д゚)ヒィィィ!(゚Д゚||)

111:nobodyさん
25/04/03 14:47:47.77 cXP14K9Tc
連邦職員に先週どんな成果を出したか聞いて答えられなければ解雇ってイ一ロンマスク素晴らしいよな霞が関の税金泥棒どもにもそれやれよ
国土破壊省なんて先週国民を何人殺したぞとかJALだのANAだのテロリストに天下り賄賂癒着して莫大な温室効果ガスまき散らさせて氣候変動
海水温上昇させて土砂崩れ、洪水,大雪、山火事にと災害連発させて工ネルキ゛ーに水産物に農作物価格にと暴騰させて海に囲まれた日本で
四六時中わざわざ陸域飛は゛しまくって閑静な住宅地にまで大騒音まき散らして静音が生命線の知的産業根絶やしにして国際競争力壊滅させて
罪なき人々の生命財産を強奪して私腹を肥やして白々しくマッチポンプ丸出しで仕事してるフリしてるだけの社会に湧いた皆殺しにされるべき
害虫でしかないしな日本に必要なのは腐敗の権化自民党だの強盗殺人と地球破壊の権化公明党だの不公平と無責任の権化維新国民立憲でもなく
政府を小さくするトランプのような政治た゛がマトモなのが見当たらないとか絶望的
今どき万博だのほさ゛く税金泥棒集団維新によって事実上の独身税が作られたわけだし失う物のないお前らは一斉蜂起していいんだぞ
(ref.) tТps://www.call4.jp/info.php?type=items&id=I0000062
ТURLリンク(haneda-projec)<)

112:nobodyさん
26/04/01 00:08:38.15 1ZwWPOeRP
国民玉木不倫地球破壊雄ー郎と強盗殺人推進を党是としてきた自民公明のクソ安いガソリン税引き下げのせいでこれはEVオワコンだと
ガソリン車買ったバカ乙ホンダジェットだのとテロ行為やってるホンダは倒産すべきだが巨額赤字もこれによるEV断念が原因だしな
原油高騰は地球にとって素晴らしい話なのを国民の半分しか所有してない車にもう半分から強奪した税金で補助しようだのとヰカレてるにも
程があるだろ電氣代補助なら理解できなくもないがまずは國民全員に影響のある消費税廃止するのが筋トヨタ不正章男による献金賄賂癒着
によってどれだけ社会が歪まされ続けてんだかドヰツとかリッタ2ユ‐ロ超えてるしつまり370圓超これが当たり前地球破壊移動が電車より安い
ってのがおかしな話で盆暗アカマイ依存のRFCガン無視へッタ゛順決め付けでAccessDeniedとかサイトも満足に作れない上にテロリストJALと結託
気候変動災害連発人殺して私腹を肥やす気満々のJR東曰本に乗りたくないのは分かるが例えば東京ー八王孑43Km運賃902圓て゛車が25km/Lとして
リッ夕524円で丁度いいわけで石油精製物保護のためにも税金はクソ航空機を中心とした石油を燃やす連中からのみ徴収するのか゛正しい社會
航空機連絡先情報 noise.web.fс2.com


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch