トップページ⇒php
1001コメント258KB

【PHP】下らねぇ質問はID出して書き込みやがれ 117

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2012/03/22(木) 01:10:44.38ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 116
http://kohada.2ch.net/test/read.cgi/php/1330224598/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0307nobodyさん2012/04/05(木) 17:59:21.90ID:???
そもそもオープンする気も無いのにロックしてるか知りたいというのがおかしい
0308nobodyさん2012/04/05(木) 18:01:00.22ID:???
オープン「だけ」ならEXロックでも可能だぞ
0309nobodyさん2012/04/05(木) 21:21:12.68ID:???
>>298
なんか少しググってみたけど、
大概の場合、ロックした際になんらかファイル吐くなり、DBで管理するなりしてるのを見かけるね。
ストリーム開いてロックするときに抱合せてIMDBにロックしたログ流していく関数作って管理するのが楽な気がする。
そういえば、パーミッションを都度いじくるって手もあるけど、ロック中にダウンするとあれだしな。
0310nobodyさん2012/04/05(木) 21:24:35.66ID:???
> ロック中にダウンするとあれだしな。
今まで考えないでそれやってた、ガクブルだな
0311nobodyさん2012/04/05(木) 21:40:42.26ID:???
>>310
結局のところ、サーバ構成にもよるから
それにあわせて都度考えろってなるけど
Webサービスの起動スクリプトに初期化スクリプト仕込むのが
割と汎用性の高い解決策な気がするのでそれでもいいと思う。
って、書いてあとに310見て気付いた。
0312nobodyさん2012/04/06(金) 01:37:41.87ID:???
phpが苦手とするタイプの処理だね。
0313nobodyさん2012/04/06(金) 03:14:58.71ID:???
flockした状態で異常終了したらロックしっぱなしになると信じてる展開が続いてるな。
いいぞ、もっと続けろ
0314nobodyさん2012/04/06(金) 04:02:02.92ID:???
お前は何を言っているんだ
0315nobodyさん2012/04/06(金) 04:02:54.80ID:???
俺が言ってたロックは話はパーミッションの事でありまして
0316nobodyさん2012/04/06(金) 04:07:05.83ID:???
is_file_lockedも見つけられない素人は放置
0317nobodyさん2012/04/06(金) 05:10:13.99ID:???
パーミッションを都度いじくるって、それうまく排他制御できるのかなぁ
0318nobodyさん2012/04/06(金) 05:12:01.45ID:???
A 読み書きで開く
B 読み書きで開く
A パーミッションが読み書き可能なら
B パーミッションが読み書き可能なら
A 書き込み不可にする
B 書き込み不可にする
A そろそろ書き込みたいので読み書き可能にする
B そろそろ書き込みたいので読み書き可能にする
A 書いた
B 書いた
0319nobodyさん2012/04/06(金) 05:13:29.66ID:???
最後なんか変だった。
- A そろそろ書き込みたいので読み書き可能にする
- B そろそろ書き込みたいので読み書き可能にする
A 書いた
B 書いた
+ A パーミッションを戻す
+ B パーミッションを戻す

こうかな。
0320nobodyさん2012/04/06(金) 07:52:33.81ID:???
ロックの話は、排他ロックの時にfopenして待ちになるのがイヤだけど、WindowsがLOCK_NBに対応してないから問題ってこと?

>>317
排他制御はロックを取得している時点でできている。
0321nobodyさん2012/04/06(金) 09:15:40.95ID:???
synchronized使えよ。
0322nobodyさん2012/04/06(金) 11:57:10.32ID:92B6FHKw
【OS名】RHEL6.2
【PHPのバージョン】5.3.3
【連携ソフトウェア】MySQL
【質問内容】変数の値が格納されてるアドレスにある値を\0クリアしたい

$a = 'abc';
$a = null;
unset($a);
としてもメモリ上では$aが指すポインタが変わるだけで、
abcはメモリ上のどこかに残りますよね?
このabcの値を\0でクリアする方法って拡張を作る以外にありますか?
0323nobodyさん2012/04/06(金) 12:10:42.30ID:???
>>322
なんたる無理解と思い込みの激しさ。
このへん読めば。
http://php.net/manual/ja/features.gc.refcounting-basics.php
0324nobodyさん2012/04/06(金) 12:40:17.89ID:92B6FHKw
>>323
それには実データメモリ上のどこを指しどのタイミングで削除されるかは書いてないよ
メモリ開放はされてもメモリ上のデータが消されるという保証はない。
0325nobodyさん2012/04/06(金) 12:48:40.28ID:92B6FHKw
追記で
>次に、unset($a); を呼ぶと、(型と値を含む)変数コンテナが メモリから除去されます。
と書かれてるけど、これはメモリ開放されるだけじゃないの?
0326nobodyさん2012/04/06(金) 12:49:45.93ID:???
>>317
ちゃうちゃう
パーミッションで直接的に排他制御するんじゃなくて
ルール付してパーミッションをフラグとして扱って
各アプリケーション側でそれを見て制御するって内容。
その場合、不整合が発生するような場合に初期化するようにすれば
割と汎用的に使えるかなって思ったんすよ。
元々、ストリーム開く前にロックされているかどうかわかる方法聞かれてたから
うまい解決方法だとは思わないけど、代案としてはこんなかなーって思ったんすよ。
0327nobodyさん2012/04/06(金) 12:59:16.23ID:???
>>326
そういうのは、「symlink, mkdir, rename」などでやることになってる。
実行と成否のチェックが同時にできるのが味噌。
2命令だと、間に別プロセスが割りこみ得るから。
0328nobodyさん2012/04/06(金) 13:00:44.07ID:???
あぁなるほど、どっかで初期化を前提にするなら
もはや、そのあたりでもなんでもありですな。
申し訳ないっす。
0329nobodyさん2012/04/06(金) 13:10:50.77ID:???
>>324-325
できないってことですよ。
0330nobodyさん2012/04/06(金) 14:12:48.73ID:???
だからsynchronized使えってw
0331nobodyさん2012/04/06(金) 15:33:03.02ID:???
>>330
すまん。低脳PHPerだから実装がわからん。
0332nobodyさん2012/04/07(土) 00:06:54.61ID:???
>>330
ここはJavaスレではありませんが。。
0333nobodyさん2012/04/07(土) 02:43:42.52ID:???
aaa
0334nobodyさん2012/04/07(土) 19:58:40.85ID:nOiI4H4s
【OS名】 XP
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】
セキュリティの質問です。
以前どこかのページで、機能ごとにphpページを分けるとセキュリティ上の
問題があるという記事を見たような気がします。
(機能から機能へリダイレクトするなという内容だったかも?)

login.php/logout.php、投稿するのにregist.php、削除するのにdelete.phpというふうに
細かくわけると問題あるというような内容でした。ちょっと例が良くないですが……。

・このセキュリティの問題に心当たりのあるひとはいらっしゃいますでしょうか?
・phpページは上のように機能ごとに分けてもセキュリティの問題はないでしょうか?
0335nobodyさん2012/04/07(土) 20:03:14.18ID:???
むしろ機能ごとに分けないといびつになる
0336nobodyさん2012/04/07(土) 20:38:04.58ID:???
>>334
少なくとも機能ごとにphpページを分けることとわけないことでセキュリティに差異はない。
なんか勘違いしてると思うよ。
03373342012/04/07(土) 20:53:57.54ID:nOiI4H4s
>>335
>>336
CSRFの誤った対策のひとつに予測されにくい機能名.phpにする、
みたいな記事がありましたので、それとごっちゃになったのかもしれません。
セキュリティには問題ないようなので、記事については忘れることにします。
ありがとうございました。
0338nobodyさん2012/04/07(土) 21:04:56.84ID:Cj6uk8jR
文字列を1文字ずつ分割したいんだけど

$a="unkochinko\n";
$b=array();
preg_match_all("/./",$a,$b);
print_r($b);

こんなダサい方法しか思いつかないので
格好いい方法を教えてちょんまげ
0339nobodyさん2012/04/07(土) 21:08:14.24ID:???
>>338
>◆質問する時の注意
>・ 質問者として、態度をわきまえること。
0340nobodyさん2012/04/07(土) 21:13:57.15ID:???
>>339
わかんねーならしゃしゃり出てくんなよ低脳
0341nobodyさん2012/04/07(土) 21:15:40.20ID:???
>>338 の頭悪そうなコードは見てて恥ずかしい
0342nobodyさん2012/04/07(土) 21:34:46.83ID:???
>>340
>◆質問する時の注意
>・ 質問者として、態度をわきまえること。
0343nobodyさん2012/04/07(土) 21:38:22.19ID:???
>>342
回答者としての態度なんですかねそれ
0344nobodyさん2012/04/07(土) 21:42:35.80ID:???
>>343
>>1
0345nobodyさん2012/04/07(土) 21:51:22.03ID:???
くだらねえ粘着するなよ。 まともな回答者が迷惑するだろ
0346nobodyさん2012/04/07(土) 21:53:14.09ID:???
じゃ回答すればいいじゃん
あ、質問したご本人様でしたか^^;;;;
0347nobodyさん2012/04/07(土) 21:54:18.97ID:qM8mOq4t
if使って$intが5の倍数の時だけ実行するって
動作させたいんですがどうすればいいでしょうか?

よろしくお願いします
0348nobodyさん2012/04/07(土) 21:56:37.75ID:???
>>346
そうやって煽る暇があったら回答しろよ
0349nobodyさん2012/04/07(土) 22:33:48.05ID:???
>>347
$int % 5
0350nobodyさん2012/04/07(土) 22:34:50.64ID:???
回答できないw
俺今回のスレ回答しないしw
0351nobodyさん2012/04/07(土) 22:50:00.37ID:qM8mOq4t
>>349
うまくいきました!
ありがとうございます(^^)
0352nobodyさん2012/04/07(土) 23:08:39.41ID:???
イライラするわ
0353nobodyさん2012/04/08(日) 00:29:50.71ID:???
>>338
回答する必要性を感じない
以上
0354nobodyさん2012/04/08(日) 01:47:38.14ID:???
>>338
str_split

こういうのはさっさと回答して回した方がスレ的に健全
0355nobodyさん2012/04/08(日) 04:06:15.00ID:???
>>354
ついでにマルチバイトの場合も教えてあげなよ
0356nobodyさん2012/04/08(日) 04:35:21.32ID:???
質問者の態度ではないな
0357nobodyさん2012/04/08(日) 04:40:23.58ID:???
やっぱスルーしたほうが健全だわ
0358nobodyさん2012/04/08(日) 04:56:33.02ID:???
質問者の態度を正すためだけのスレだからな
0359nobodyさん2012/04/08(日) 04:59:16.36ID:???
だって態度が正されないんだもの
0360nobodyさん2012/04/08(日) 05:01:40.92ID:???
だよなぁ。回答するとかしないとか、それ以前の問題。
0361nobodyさん2012/04/08(日) 11:04:19.79ID:jIO5FYi9
ユーザー側がタグを自由に付けられる仕様にしたいのですが、無難な方法はありますか
使えるPEARなども教えて貰えるとありがたいです
0362nobodyさん2012/04/08(日) 11:33:41.65ID:???
丸投げするならYahoo知恵遅れに行け
0363nobodyさん2012/04/08(日) 11:39:15.75ID:???
やめたほうがいい
いらんものエスケープするより最初から絞ったほうが無難だと思うけどね
0364nobodyさん2012/04/08(日) 12:51:16.37ID:???
タグが何を指すか不明
0365nobodyさん2012/04/08(日) 14:25:21.27ID:???
まともなヒアリングも出来ないw
0366nobodyさん2012/04/08(日) 14:30:40.98ID:???
質問の仕方が悪すぎる
0367nobodyさん2012/04/08(日) 15:11:21.17ID:???
>>366
他人のせいにするなよ
0368nobodyさん2012/04/08(日) 15:47:17.66ID:???
>>361
タグはこれがすごく参考になると思います!
http://okwave.jp/qa/q5481192.html
0369nobodyさん2012/04/08(日) 16:08:30.02ID:???
これネームのことじゃんか
0370nobodyさん2012/04/08(日) 21:27:46.64ID:???
ここの回答者はバカばかり。
0371nobodyさん2012/04/08(日) 21:33:39.98ID:???
違うよ、回答者じゃない人が多いだけだよ
0372nobodyさん2012/04/08(日) 21:41:17.01ID:???
違うよ、ルールを守らない質問者ばかりだからだよ
0373nobodyさん2012/04/08(日) 21:51:52.62ID:???
いままでは、うまく捌けてたぞw
0374nobodyさん2012/04/08(日) 21:57:57.89ID:???
質問が下らなすぎて答える気にならないし!
0375nobodyさん2012/04/08(日) 22:07:54.44ID:???
くだらないスレでそれいうとかwww

バカだろ?
0376nobodyさん2012/04/08(日) 22:12:31.10ID:???
「下らねぇ」ってのはあくまで謙遜の枕詞であって、本当に下らない質問は書くんじゃねぇ!って思うがどうなの。
0377nobodyさん2012/04/08(日) 22:31:55.68ID:AmV0Xn94
phpのシングルトンってJavaのそれとは違い、
使う意味ないのでしょうか?
0378nobodyさん2012/04/08(日) 22:37:13.17ID:???
>>377
え、シングルトンパターンに、JavaもPHPも関係ないですよ。
0379nobodyさん2012/04/08(日) 22:38:12.15ID:???
意味が無いという事は無いが
リクエスト毎にインスタンスを生成するので
効果が薄いと言うべきかな
まぁそれでもシングルトンの特性を利用すれば十分意味はある

0380nobodyさん2012/04/08(日) 22:56:37.41ID:AmV0Xn94
>>378
使う意味も同じですか?

以下の記事みたいにmemcachedみたいな外部キャッシュを
入れてようやくJavaっぽくなるみたいですけど・・・。

ttp://www.tsujita.jp/blojsom/blog/default/PHP/2007/01/12/memcached%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9FPHP%E3%81%AE%E3%82%B7%E3%83%B3%E3%82%B0%E3%83%AB%E3%83%88%E3%83%B3%E5%AE%9F%E8%A3%85.html
0381nobodyさん2012/04/08(日) 22:58:36.45ID:???
だから、そういう高度な質問はスレ違いなんだってw
オブジェクト指向は禁止だよ?
0382nobodyさん2012/04/08(日) 23:07:12.50ID:5XJdQ/Tn
>>381
この件って、JavaとPHPじゃ根本的な設計に影響しませんか?

誰かJavaの経験者はいませんか?
03833782012/04/08(日) 23:07:41.31ID:???
>>380
あー、すみません。
そういう意味では、違います。

が、それはPHPとJava Servletの違いと言ったほうが適切かもしれなくて、
PHPではそもそもリクエストをまたいで保持されるものは $_SESSION という
しょっぱい配列だけで、これはオブジェクトを引き継げないのでして。。

なので、serializeしたり、外部ストレージに保持したりみたいなことをする
わけですが。

Javaっぽくしたいお気持ちは分かりますが、ほどほどにしておいて、
PHPっぽく設計できるようになられる方が幸せになれると思います。。
0384nobodyさん2012/04/08(日) 23:09:24.31ID:???
>>382
このスレはPHPオンリーばかりだから・・・
0385nobodyさん2012/04/08(日) 23:10:12.03ID:???
Apacheのモジュールなのに何言ってんだ?
03863782012/04/08(日) 23:11:40.19ID:???
>>384
Java流れとか相当いるでしょ。
ま、私はJava流れまでいかず、Javaカジりですけど。
0387nobodyさん2012/04/08(日) 23:15:10.08ID:5XJdQ/Tn
みなさまありがとうございます。

大体わかりました。
設計にいろいろと制限が多くなりそうですね。
0388nobodyさん2012/04/08(日) 23:31:36.67ID:???
別に制限が増える話でもないと思うけど。
PHPはPHPなりの作り方があって、Javaと同じものをPHPで作りたいって思うなら、そりゃ制限が出てくる。
逆も同じだろ
0389nobodyさん2012/04/09(月) 00:02:18.25ID:???
>>388
PHPでできてJavaにできないことはあるの?
0390nobodyさん2012/04/09(月) 00:15:38.35ID:???
>>388
へっ?
0391nobodyさん2012/04/09(月) 00:21:58.88ID:???
>>388
今の話の流れでPHPではDBへのアクセスが増えるって想像できないの?
03923782012/04/09(月) 01:06:33.47ID:???
>>391
ナイスフォロー。
0393nobodyさん2012/04/09(月) 01:31:43.24ID:???
Javaって一時期下火になって、最近盛り返してる印象はあるけど、そんな万能なの?
0394nobodyさん2012/04/09(月) 01:39:49.98ID:???
>>391
制限ってハードウェア要件とかの話か?
0395nobodyさん2012/04/09(月) 01:52:22.71ID:???
>>393
ウェブサービスでよく使われるからじゃない?
facebookとかyahooで使われているhadoopとか、
twitterとか、他にgoogle系のやつとかで。

あとandroidの影響も大きいんじゃないの?
PHPよりも万能なのは間違いないかと。

>>394
>>383に書いてあるやん。DB負荷で相当な違いになるかと・・・。
0396nobodyさん2012/04/09(月) 03:21:55.27ID:???
> なので、serializeしたり、外部ストレージに保持したりみたいなことをする
ってすればよくね?

phpからhadoopが使えないわけじゃあるまい。
Java使いはすべてがJavaで完結しなければ気がすまないのか?
0397nobodyさん2012/04/09(月) 04:36:11.36ID:VbqNDLXF
>DB負荷で相当な違いになる
それだと、仮に現時点でjavaで負荷的にフマン無くサクサク動くサイトがあって、仮に
それを他言語でやると負荷が2倍に増すことにより不具合が頻発するとしても、
サーバーのスペックは年々の技術革新で上がっていくんだから、数年後は2倍に上がっていた負荷
を2倍に上昇したcpuやsddのスペックが余裕でカバーできるようになるって話になる。
これからどっちやろうかと思案している者にとっては大した問題ではないな。
0398nobodyさん2012/04/09(月) 13:01:13.82ID:???
>>396
ムダ>>397
> なので、serializeしたり、外部ストレージに保持したりみたいなことをする
ってすればよくね?

↑
結局、そんなことが必要になる場合はphpで作るのは逆にコストがかかる。
php使わずに、言語仕様に最初から含まれている別言語を選べばよい。

>>397
別言語を覚えようとしない君は意見を言う資格はない。
Java言語を君が覚えてphpと使い分ければ無問題。
0399nobodyさん2012/04/09(月) 13:37:41.13ID:???
近年のJavaの盛り返しはHWの高性能化による恩恵の方が大きいだろ
0400nobodyさん2012/04/09(月) 14:03:04.73ID:???
>>395
>DB負荷で相当な違い

Javaはアプリケーションサーバの負荷が(比較的)高く、PHPは(比較的)低い。
JavaはDBサーバーの負荷が(比較的)低く、PHPは(比較的)高い。

ケースバイケースであるが、全体としては、そう変わらなかったりしないこともない。
0401nobodyさん2012/04/09(月) 15:20:59.43ID:???
JavaはDBサーバーの負荷が(比較的)低く、PHPは(比較的)高い。

これが良く解らないんだけど
言語によってデータベースエンジンの挙動が違うって事?
0402nobodyさん2012/04/09(月) 15:25:03.02ID:???
Javaはコネクションをプールして毎回それを呼び出すだけだけど
PHPは毎回コネクションをはらなくてはいけないからって所じゃない?
でも確か裏では毎回コネクション貼ってはいなかったような?
0403nobodyさん2012/04/09(月) 15:59:45.17ID:???
いつまでこのスレでやってるんだよ
0404nobodyさん2012/04/09(月) 16:14:54.60ID:???
同じ人かどうか知らんけどJavaの人がずっといるよね
0405nobodyさん2012/04/09(月) 16:18:33.54ID:???
PHPは継ぎ接ぎの付け焼刃だから
速度の面でもOOPに向いてない言語
0406nobodyさん2012/04/09(月) 17:13:02.79ID:???
>>401

>>383
0407nobodyさん2012/04/09(月) 17:17:33.15ID:???
>>401

Javaは高機能なキャッシュが簡単に利用できる。
デフォルトでmemcachedみたいなものがある。
■ このスレッドは過去ログ倉庫に格納されています