13/02/02 21:41:08.72
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 125
スレリンク(php板)
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
2:nobodyさん
13/02/02 21:41:41.48
■過去ログ
【PHP】下らねぇ質問はID出して書き込みやがれ 124
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 123
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 122
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 121
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 120
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 119
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 118
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 117
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 116
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 115
スレリンク(php板)
【PHP】下らねぇ質問はID出して書き込みやがれ 114
スレリンク(php板)
3:nobodyさん
13/02/02 21:42:12.08
関連リンク
■本家マニュアル URLリンク(www.php.net)
■日本PHPユーザ会 URLリンク(www.php.gr.jp)
■PEARマニュアル URLリンク(pear.php.net)
■メーリングリスト URLリンク(ns1.php.gr.jp)
■ZFマニュアル URLリンク(framework.zend.com)
■Smartyマニュアル URLリンク(www.smarty.net)
(以下英語)
■Zend本家 URLリンク(www.zend.com)
■Zend Framework URLリンク(framework.zend.com)
■php | architect URLリンク(www.phparch.com)
■Smarty URLリンク(www.smarty.net)<)
■PECL本家(英語) URLリンク(pecl.php.net)
4:nobodyさん
13/02/02 21:42:42.68
【簡易FAQ】
1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→ URLリンク(example.com)が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「~.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
5:nobodyさん
13/02/02 21:43:13.09
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_~()が手軽。複雑なパターンはpreg_~()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
URLリンク(www.faqts.com)
15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://~とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
6:nobodyさん
13/02/02 21:47:03.00
________________________
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|最近荒らしが頻発していますが、
|全力でスルーして下さい。
|
| 。/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ΛΛ / | わかったかゴルァ!!
(#゚Д゚)⊃ ∠___________________
~/U /___________________Ellヨ__
| ̄ ̄|  ̄ ̄ ̄
7:nobodyさん
13/02/02 22:17:01.82
■■■■■■■■■■■■■■■■■■■■■■■■
ここは糞スレです、書き込まないようにしましょう
■■■■■■■■■■■■■■■■■■■■■■■■
8:nobodyさん
13/02/02 22:18:17.97
■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■
ここは糞スレです、書き込まないようにしましょう。
書き込んでいるとあなたも板荒らしだと思われます。
■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■
9:nobodyさん
13/02/02 22:51:10.29 NL22H5Yo
PHPは曖昧な設計なうえにセキュリティホールも多い
布教だけは熱心だから利用者は増える一方だから、セキュリティホールの多いシステムばかり量産されて本当に迷惑
まだ初心者のうちなら変なクセがつく前だから他の言語に移行するのも比較的だから、自身のため、健全なITネットワークのため、今のうちに他の言語を習得することをおすすめする
by WebProg板住民一同
10:nobodyさん
13/02/03 03:20:01.15
☆初心者必読☆
URLリンク(ameblo.jp)
>数々の糞仕様の発見で驚きを提供してくれる人気プログラム言語PHP
URLリンク(usamimi.info)
>「初心者にもWebアプリケーションが書ける」という幻想を与えることで、 バグだらけで、メンテナンス性が低く、
>セキュリティ問題を抱えた Webアプリケーションを乱造することになっているのではないだろうか。
URLリンク(qarc.info)
>PHPとか言語仕様が糞なうえにセキュリティホール付でリリースするからマジないわ。
URLリンク(www.tiobe.com)
PHPは順位を維持しているものの-0.16%、
一方のRubyはというとPHPより順位は低いものの+0.34%、
このままいけば必ず逆転する
URLリンク(www.anlyznews.com)
>5. PHPなどのスクリプト言語しか知らないのに、プログラミング言語の優劣を語る。
>6. PHPの遅さを知らないのに「最近のマシンは速いからプログラミング言語に速度は求められていない」と言い切る。
>11. 仕様が曖昧で急激に変化するPHPで、テストファーストとか言い出す。
>13. ブログで自らの無知をさらけ出す。
URLリンク(creeper.no-ip.info)
>■ 変数名を間違えると新しい変数が作られる
>■ 文字列の変数展開がクソ
11:nobodyさん
13/02/03 10:24:13.89 TzWP1q09
今まで独学でただ変数と関数でガリガリ書いてたんだけど
ようやくオブジェクト思考に興味がでてきて、フレームワークとか勉強している
今からフレームワーク入れるならどれがお勧め?
Zendのスレ行ったらあんまりな雰囲気だったし、CakeとSmartyで迷ってるんだけど
CodeIgniterなんてのもでてるし
12:nobodyさん
13/02/03 11:40:11.36
>>11
CakeとSmartyは同時に使える別の仕組み。
13:nobodyさん
13/02/03 11:46:02.71
いまどきsmartyなんて古いですよ
twigを使いましょう
14:nobodyさん
13/02/03 11:46:14.88
symfonyと間違えました・・・
15:nobodyさん
13/02/03 12:51:58.48
Cakeがバランスとれてていいんじゃない?
アップデートも頻繁に行われてるし
日本人の利用者も多いし資料も豊富でしょう
CodeIgniterはフレームワークとしては弱い
Symfonyは強力だけど遅いのが難点
16:nobodyさん
13/02/03 13:21:53.15
>Symfonyは強力だけど遅いのが難点
そのためにAPC推奨してるだろ
17:nobodyさん
13/02/03 13:26:55.51
APCが使えればいいけどな
18:nobodyさん
13/02/03 13:53:06.00
もしかして無料サーバ前提で話してるような時限の低い話?
19:nobodyさん
13/02/03 14:02:36.29
無料じゃないけどロリポップ前提の話をしている。
20:nobodyさん
13/02/03 14:03:10.36
じゃぁ、symfonyダメじゃん。
21:nobodyさん
13/02/03 14:03:56.50
その論理でいけば、cakeもCIもダメだなぁ
22:nobodyさん
13/02/03 14:04:28.93
>>18
PHPやってるような奴はスキルも金もないんだから当たり前だろ
23:nobodyさん
13/02/03 14:07:41.07
APCが使えないから使えるところを借りれば済む話
24:nobodyさん
13/02/03 14:08:23.41
APCなんて有料の共有鯖でもインストールされてないだろ?
と思ったが、最近のはされてることもあるようだね。
ロリポップも2011年3月から導入されてるらしいぞ?
使ったことないけど管理画面のPHP設定にあるらしいから見てみな。
25:nobodyさん
13/02/03 14:12:39.32
>>22
立てられるけど管理コストを考えたらレンタル鯖のほうがいいこともある。
俺もローカルで検証できるようにちゃんとANHTTPDは入れてある。
26:nobodyさん
13/02/03 14:14:09.38
そいつは触っちゃだめ
しかもANHTTPDなんて言ったら思う壺
27:nobodyさん
13/02/03 15:33:36.69
>>26
ANHTTPD使ってる奴多いだろ
28:nobodyさん
13/02/03 15:53:46.17
>>24
マジか?!知らんかった、ありがとう
29:nobodyさん
13/02/03 15:54:33.15
マジでおまえらWindowsで開発してんの?
30:nobodyさん
13/02/03 15:57:37.53
>>26
お前に指図される覚えはない。
お前みたいな勘違い野郎のせいでPHPユーザがなめられるんだろ。
31:nobodyさん
13/02/03 16:03:06.51
ぺち ぱーの開発環境
・ANHTTPD
・メモ帳
ぺち ぱーの開発するアプリが産廃なのはこれも原因の一つ
32:nobodyさん
13/02/03 16:09:30.37
前スレ974といいあぼん回避してまで荒らしたいのか┐(´д`)┌
33:nobodyさん
13/02/03 16:11:21.51
>>31
ruby厨?
ruby厨は何で開発してるの?
34:nobodyさん
13/02/03 16:43:25.84
>>33
自分で調べろキチ ガイ
35:nobodyさん
13/02/03 17:24:32.69 TzWP1q09
>>15
どもです
Cakeで進めたいと思います
ちなみにテスト鯖はローカルで立ててますし、本鯖はVPSで細々やってます
開発はWindowsからローカル鯖にsshでアクセスして、もっぱらviでガリガリ・・・
36:nobodyさん
13/02/03 17:30:42.44
>開発はWindowsからローカル鯖にsshでアクセスして、もっぱらviでガリガリ・・・
効率悪そうだなそれ
Eclipseにローカル鯖連動させればいいのに
37:nobodyさん
13/02/03 17:34:10.01
効率求める奴がphpなんか使うかよw
効率求めるならRuby
38:nobodyさん
13/02/03 17:38:07.67
>>36
フレームワークすら逃げてたので、Eclipseには全く手つかずで
viのカーソル移動が染みついてしまってるので、それがないとしたら移行に抵抗感じますが
似たような挙動にできるんでしょうか
39:nobodyさん
13/02/03 17:39:30.55
viって自動エラー検出とかコード補完とか出来るの?
40:nobodyさん
13/02/03 18:25:29.83
>>37
実行速度が遅かったら意味ないだろ
41:nobodyさん
13/02/03 20:08:40.77
>>40
じゃあphpは速いの?
42:nobodyさん
13/02/03 20:32:03.82
もうPHPは使える人が増えてきたからあんまり質問する人もいなくなったね
43:nobodyさん
13/02/04 10:51:50.45
>>38
ぐぐったらすぐ出てきたから試してみたら?
ssh + screen + vim でいいと思わんでもないけど、食わず嫌いはよくないかもしれないし
44:nobodyさん
13/02/04 13:31:35.84
食わず嫌いが何とかって言い出すならRubyも使ってみるべきだな
45:nobodyさん
13/02/04 13:43:05.44
食わず嫌いが何とかって言い出すならPHPも使ってみるべきだな(キリッ
46:nobodyさん
13/02/04 15:40:57.14
俺は両方使って最終的にphpのほうを鯖からアスンコしたwwwww
47:nobodyさん
13/02/04 15:46:30.65
Ruby使ったことないって決めてかかるのも良くないんじゃないかな。
荒らしたいだけだろうけど。
48:nobodyさん
13/02/04 16:15:27.30
使ったことあればPHPなんぞ選ばんよ
カレー味のカレーとウンコ味のカレーの両方を食べたことがあったら
どう考えてもカレー味のカレー選ぶだろ
49:nobodyさん
13/02/04 16:19:36.40
その例え昔からよくきくけどうんこってどんな味?
50:nobodyさん
13/02/04 16:27:53.14
>>49
うんこの味に決まってるだろう。
51:nobodyさん
13/02/04 16:44:39.10
ウンコ味のカレーなら、ちょっと食ってみたい気もする、だってカレーだし。
カレー味のウンコも、ウンコ味のウンコも食う気にはならん。
52:nobodyさん
13/02/04 16:45:26.07
少なくとも食えない味ではない
スカトロ系のAVでもよく食べてるだろ
53:nobodyさん
13/02/04 17:06:34.73
AV脳発見。
あれは擬似ウンコ。
AV嬢の直腸をしっかり洗浄してチョコレートを詰め込んであります。
実際のウンコだと細菌が多すぎて無理。
54:nobodyさん
13/02/04 17:27:41.68
>>51
あんな臭いもの食えるか
55:nobodyさん
13/02/04 17:39:49.47
Perlスレ乱立させてんっのPHP厨だろ
そんなこてしてるからPHPスレ荒らされんじゃnーの
56:nobodyさん
13/02/04 20:30:58.47
質問です、PHPやってるとやっぱり変な癖がつくのでしょうか?
57:nobodyさん
13/02/04 20:48:26.70
>>56
スレタイすら読めない奴は、癖以前に人として問題がある
58:nobodyさん
13/02/04 20:58:15.63
>>57
スレタイにはくだらなくない質問に関して何も書かれてないのでIDは出さずに質問したのですが、それ以外の部分でしょうか?
それ以外は【PHP】と126ですが、PHP関連の質問ですし、126は質問には関係ないと思われます。
あなたがスレタイを読めたうえに日本語を理解することができ、
さらに人として大きな問題を抱えていないのでしたら、
>スレタイすら読めない
について説明をお願い致します。
上記3つの条件をすべて満たした場合にのみご返答頂ければ結構です。
59:nobodyさん
13/02/04 21:02:21.99
>>58
>スレタイにはくだらなくない~
貴様が決める事ではない、勘違いするな。
>上記3つの条件をすべて満たした場合にのみご返答頂ければ結構です。
貴様の様なゴミが、他人様に指図するな、身をわきまえろ
60:nobodyさん
13/02/04 21:13:36.38
>>スレタイにはくだらなくない~
>貴様が決める事ではない、勘違いするな。
こいつは何を勘違いしたんだろう
決めるも決めないもスレタイにそう書いてあるのに
61:nobodyさん
13/02/04 21:21:36.95
屁理屈rubistは相手にすんなって
62:nobodyさん
13/02/04 21:25:55.93
>スレタイを読めたうえに日本語を理解することができ、
>さらに人として大きな問題を抱えていない
この条件はPHP胄にとっては酷だろw
この条件を満たす奴なんてPHP胄の中にいるのかねww
63:nobodyさん
13/02/04 22:44:53.61
PHP厨は人して最低限のプライドもないから煽るだけ無駄
64:nobodyさん
13/02/05 16:39:03.39 oVF9Rb17
http_outputに"pass"を指定した際に以下のコードを実行すると文字化けしました。
print mb_convert_encoding("テスト",mb_http_output());
"pass"とは変換しないと聞きましたがどういう意味なんでしょうか?
65:nobodyさん
13/02/05 16:45:52.97
mbstring.http_output = pass ; No conversion
この話?
変換しないってことです。
66:nobodyさん
13/02/05 16:58:32.48
>>64
mb_http_outputは 現在のHTTP 出力文字エンコーディングを返すので、つまり
"pass" を返します。mb_convert_encodingのそんなとこに入れていい関数ではありません。
http_outputの設定をしたところで、それが反映されるのは ごく限られた場合のみです。.
いらない子なので無視しましょう。
67:64
13/02/05 17:24:26.11 oVF9Rb17
回答ありがとうございます。
URLエンコードを行う際に、環境の違いを考慮して
上記のようにしておきたかったのですがやるべきでないのでしょうか?
68:nobodyさん
13/02/05 18:07:32.40
しつけーな自分で調べろゴミクズ
69:nobodyさん
13/02/05 18:46:57.95
>>67
URLエンコードを行うということですが、
テストという文字を何という文字コードに変換すべきか と言うのは、環境の設定と何の関係ない話です。
また、テストという文字が今何の文字コードであるかも、環境がどうなっているかとは関係ない話です。
70:nobodyさん
13/02/05 23:10:10.57
いいぞいいぞ
そうやってもっと嘘を教えるんだ
71:nobodyさん
13/02/05 23:35:05.21
自分でクラス作成してページ遷移する度に
インスタンスを再読み込みするんですが、
毎回読み込むのと一回読み込むので速度に大差ありますか?
72:nobodyさん
13/02/06 00:06:03.76
>>67
http_output、 HTTP 出力文字エンコーディングというものは
URLリンク(www.php.net) にあるとおり、
1、ob_start("mb_output_handler"); と出力バッファリングをして
コールバックに mb_output_handlerを使ったとき
2、header() で Content-Type が設定されていない場合に
3、デフォルトの MIME 型が text/ で始まり
4、mbstring.http_input の設定が pass 以外である
場合に、のみ その設定が参照されるもので、その他では使われません。
73:nobodyさん
13/02/06 01:49:07.48
>>71
そんなベンチすらとれない知恵遅れはプログラミングに不向き
社会にも不要
74:nobodyさん
13/02/06 10:54:39.67 iK+N837t
今、オープンソースのプログラムを見て勉強しているんですが、
mail関数の前に受け取った情報が全てstrip_tagsで処理されています。
第四パラメーターのヘッダー(From:)は
filter_var($input_email, FILTER_VALIDATE_EMAIL)
で処理されているようです。
strip_tagsを使用しなければいけないどんな脆弱性があるのでしょうか?
具体的にはこんな感じです。
$input_name = strip_tags($_POST['name']);
$input_email = strip_tags($_POST['email']);
$input_subject = strip_tags($_POST['subject']);
$input_message = strip_tags($_POST['message']);
if(!filter_var($input_email, FILTER_VALIDATE_EMAIL)) die;
$subject = "$input_subject $input_name from $input_name";
mb_send_mail($your_email_address, $subject, $input_message, "From: $input_email");
75:nobodyさん
13/02/06 13:25:55.82
>>74
別に使わなくてもいいよ
PHP自体にでかいセキュリティホールがあるから
そんなところ気にしたところで安全性はほとんど変わらない
76:nobodyさん
13/02/06 14:01:20.06
>>74
htmlタグを無条件に処理しちゃうようなメールソフトで、想定してないことが起こりうるというだけ。
タグ入りの文字をメールで送信するだけのことであれば、何の問題もありません。
77:nobodyさん
13/02/06 14:51:47.09 iK+N837t
>>76
ありがとうございます。
メーラー側の問題なんですね
重ね重ねすみませんが、もう一つ質問です。
値の変換などを行う際の条件文で変数への代入まで行いたいのですが、どのようにされてるのでしょうか?
if(!gethostbyaddr($_SERVER["REMOTE_ADDR"]))
{
$ip = gethostbyaddr($_SERVER["REMOTE_ADDR"]);
}
だと冗長な感じがして・・恐らく典型的な初歩的な質問ですみません。
78:nobodyさん
13/02/06 14:58:00.73 iK+N837t
条件式は代入してからの評価なんですね
if(!$ip = gethostbyaddr($_SERVER["REMOTE_ADDR"]))
自己解決しました。ありがとうございました。
79:nobodyさん
13/02/06 15:01:59.85
$ip = gethostbyaddr($_SERVER["REMOTE_ADDR"]) ?: [ FALSEのときに入れる値];
とか。
80:nobodyさん
13/02/06 15:53:49.32
>>78
関数の中で代入すると処理速度落ちるよ
81:nobodyさん
13/02/06 16:18:43.34
処理速度を気にする奴がPHPなんか使うかよwwwwwwwwwwwwww
82:nobodyさん
13/02/06 18:35:37.06
>>81
無知発見ww まさかrubyとかpythonのほうが早いとか
思っちゃってるお方ですか
83:nobodyさん
13/02/06 18:44:10.80
>>80
変数に入れてからそれ調べて駄目だったとき処理すればいいしね。
それに、やれば分かるけど
ifの中で代入しないで、外で代入してその変数をチェックしたほうが若干早い
84:nobodyさん
13/02/06 18:46:58.90
>>81
なにこいつc++でWebサイトつくってるわけ?
たしかにそれだとphpより早いね(棒)
85:nobodyさん
13/02/06 19:13:55.42
>>84
なにこいつ突然c++とかリプ返してるぞ。じゃあ何でPHPみたいなもの使ってんの?わざわざ処理速度の遅い言語を探してPHPに行き着いたとかの意味不明系?
86:nobodyさん
13/02/06 19:43:36.15
ずっとこのスレ見てるけど、PHP厨って馬鹿を演じてるんじゃなくて本物の馬鹿なんじゃないかと思えてきた。
87:nobodyさん
13/02/06 19:45:07.62
別にPHPは遅くないし
88:nobodyさん
13/02/06 19:57:39.19
☆初心者必読☆
URLリンク(ameblo.jp)
>数々の糞仕様の発見で驚きを提供してくれる人気プログラム言語PHP
URLリンク(usamimi.info)
>「初心者にもWebアプリケーションが書ける」という幻想を与えることで、 バグだらけで、メンテナンス性が低く、
>セキュリティ問題を抱えた Webアプリケーションを乱造することになっているのではないだろうか。
URLリンク(qarc.info)
>PHPとか言語仕様が糞なうえにセキュリティホール付でリリースするからマジないわ。
URLリンク(www.tiobe.com)
PHPは順位を維持しているものの-0.16%、
一方のRubyはというとPHPより順位は低いものの+0.34%、
このままいけば必ず逆転する
URLリンク(www.anlyznews.com)
>5. PHPなどのスクリプト言語しか知らないのに、プログラミング言語の優劣を語る。
>6. PHPの遅さを知らないのに「最近のマシンは速いからプログラミング言語に速度は求められていない」と言い切る。
>11. 仕様が曖昧で急激に変化するPHPで、テストファーストとか言い出す。
>13. ブログで自らの無知をさらけ出す。
URLリンク(creeper.no-ip.info)
>■ 変数名を間違えると新しい変数が作られる
>■ 文字列の変数展開がクソ
89:nobodyさん
13/02/06 19:59:46.76
初心者が書いた記事を初心者が真に受けてはいけないな
90:nobodyさん
13/02/06 20:02:01.17
rubist自ら作ったコピペ用駄文
このスレが初出()
91:nobodyさん
13/02/06 20:50:19.21
PHPのここがクソ!なんでPHPなんてつかってんの!?
っていうのを検証コードつきで書いてる人って、その記事を書くためにPHPの環境をわざわざ作ったのかな。
んでも使ってもない言語の問題点を突然思いつくなんてのは不自然だし、
もしかしてPHPはクソだから使うなっていいながら使っちゃってんの?ドM?
92:nobodyさん
13/02/06 20:57:44.06
>>91
そういう協力者が沢山いたから、だんだん品質が向上してるんだよ。
93:nobodyさん
13/02/06 21:55:57.51
ありがたいことだなぁ
94:nobodyさん
13/02/06 23:03:18.56
>>91
記事を書くためにわざわざそういう環境を作ったんじゃないと思うぞ。
情弱だからPHPが良いという噂に騙されて環境を整えて使ってはみたものの、
PHPのあまりに酷さを体感して、環境構築とある程度慣れるまでに費やした時間もあるから怒りが収まらず
記事にして発散してるんだろう。
PHPなんて情弱でなければ手を出さないんだし、それが考えられる自然な流れ。
まぁ情弱とはいっても使ってみて気付けただけPHP使い続けてる奴よりは幾分かマシだろう。
95:nobodyさん
13/02/07 04:15:58.28
よくも飽きずに居続けるな
いい加減迷惑だからそろそろ帰ってよ
96:nobodyさん
13/02/07 07:18:52.40
しかし質問ないねえ。ググれば情報がたいてい手に入るからな
rubyはまだしもpythonやperlではそうもいかないだろ
97:nobodyさん
13/02/07 09:48:53.42
うるう秒を正しく設定している環境で、PHPを使った場合
他のソフトウエアはうるう秒に対応できますが、
PHPだけは言語仕様的?にうるう秒をスルーしているようで
むりっぽいんです。
perl はもちろん Mysql、ruby, c ,javascript まで対応可能なのに
PHPはやはりかなり手抜きの言語なのでしょうか?
PHPでうるう秒使う方法知ってる方いたら教えてください。
98:nobodyさん
13/02/07 12:44:16.35
だからちゃんとしたシステム作りたければRuby使えってw
99:nobodyさん
13/02/07 13:09:07.37
自演乙
100:nobodyさん
13/02/07 13:49:33.87
一秒ズレるのがいやならWindowsサーバとLinuxサーバは窓から投げ捨てろよ
101:nobodyさん
13/02/07 14:21:36.61
>>98
rubyで使えるのはわかってるけど、PHPでなんとかならんかと
102:nobodyさん
13/02/07 14:40:30.85
strptime使え
103:nobodyさん
13/02/07 14:47:15.28
>>102
その関数使っても、タイムゾーンがPHPで許されているうるう秒なしのものしか使えないので改善しないように思われ
PHPで使えるタイムゾーン
URLリンク(www.php.net)
OSで設定したタイムゾーンを使えないという仕様なの
104:nobodyさん
13/02/07 14:58:34.69
サーバでNTPDでも走ってたらな
105:nobodyさん
13/02/07 15:12:26.66
>>104
ntpdが走ってても、走ってなくても
PHPがOSで設定したタイムゾーンを使えないことに変わらん
ntpd止めたぐらいで解決するなら質問などせん
106:nobodyさん
13/02/07 16:15:38.90
>>99みたいにとりあえず自演ってことにする奴って頭悪そう
107:nobodyさん
13/02/07 16:22:27.69
PHPはおままごとセットみたいなもんだ
おままごとのプラスチック製の茶碗でも確かに実物の飯を入れられるし、
おままごとのプラスチック製の箸でも確かにその飯を食える
だけどおままごとのプラスチック製のフライパンは実物のコンロの火にかけられるか?
PHPはその程度のもんなんだよ
ちょっと高度なことをしようとすればすぐ破綻する
おままごとのフライパンをコンロで使う方法を探したり考えたりしてる暇があったら
さっさと実物のフライパン買ってこい
Rubyは実物のフライパンだ
108:nobodyさん
13/02/07 16:44:23.62
自演乙
109:nobodyさん
13/02/07 16:56:39.66 4pQIxYsD
わざわざ質問スレ荒らすようなキチガイにレスする馬鹿がいるから
いつまでたってもおさまらない
それとも全部自演か?
110:nobodyさん
13/02/07 17:00:00.09
自演乙にいちいち敏感に反応するのはruby厨がきてからだし
あながち間違いじゃないんだろうな
111:nobodyさん
13/02/07 17:11:50.07 DhEcIlF4
自演乙
112:nobodyさん
13/02/07 17:13:06.13
ruby が leepsecsに対応しているのは承知してる
普通の言語ならできてあたりまえなので、特にrubyが優れているわけじゃない
ここはPHPの質問するスレなので、rubyはどうでもいい
113:nobodyさん
13/02/07 18:38:42.10
>>97
時刻関数には疎いんだけど
具体的にどういうケースでどういうことをしてどういう結果が欲しいの?
114:nobodyさん
13/02/07 20:49:36.20
>>107
40年前のおままごと用フライパンでもホットケーキ作れるってのに。。
RubyもPHPもうまく使えないでしょそんなんじゃ。
115:nobodyさん
13/02/07 22:25:50.88
自演乙
116:nobodyさん
13/02/07 23:05:56.17 A8KJX1dY
javascript でSocket.IOを使い
var socket = io.connect("URLリンク(xx.amazonaws.com",) {port: 9000});
socket.on('join', function(data) { message(data);});
とし、データを受信している箇所があります。
このデータ受信をphpで行うにはどうしたらよいでしょうか?
WebSocket phpでググっても、phpをサーバー側として使う例はあるのですがクライアント側としてデータを受信する方法は見つかりませんでした。
117:nobodyさん
13/02/07 23:18:30.23
curlでもつかえば?
118:nobodyさん
13/02/08 00:26:20.05 YGN757hi
えーと、普通にcurlでgetしても"Welcome to socket.io."と表示されて接続が終わってしまいます。
それにこのurlはチャットの様なもので、継続的にデータを流してくるurlなので
curlで一度アクセスしてデータ受信しておしまい というのはちょっと違うと思うのですが・・・。
119:nobodyさん
13/02/08 00:44:32.88
PHPでsocket使ってTCP扱えるから
ゴリゴリ書くとか
あまり現実的ではないけど
120:nobodyさん
13/02/08 02:00:49.54
websocket php client でぐぐった一番上
URLリンク(github.com)
socket.io php client でぐぐった一番上
URLリンク(stackoverflow.com)
> クライアント側としてデータを受信する方法は見つかりませんでした。
使ったことないからわからないので、↑に該当してたらごめんね
121:nobodyさん
13/02/08 02:02:29.79
php-websocketの中身みたがclientとserver両方入ってたっぽいけどよく見てないからわからない
122:116=118
13/02/08 03:16:35.35 YGN757hi
php-websocketは以前から試してたけど、クライアント側はjsでやってるらしいんですよ。
で、あれこれやってて出来ました。お騒がせしました。
直接URLリンク(xx.amazonaws.com:9000)にアクセスしてもダメって所を勘違いしてました。
123:nobodyさん
13/02/08 10:14:02.44
>>113
うるう秒を扱えるOSで、うるう秒の設定を正しく行なっていれば
mysql, perl とも以下のURLで示された、これまでうるう秒を実施した
時刻付近を正しく表示できます。
URLリンク(jjy.nict.go.jp)
mysqlの場合
select from_unixtime('1341100823');
select from_unixtime('1341100824');
select from_unixtime('1341100825');
select from_unixtime('1341100826');
124:nobodyさん
13/02/08 10:16:43.18
2009年の場合
URLリンク(jjy.nict.go.jp)
125:nobodyさん
13/02/08 11:03:08.39
perl同様のテストを行うとこうなります。
./test.pl
2012-07-01 08:59:59
2012-07-01 08:59:60
2012-07-01 09:00:00
2012-07-01 09:00:01
Mysqlでも同様の結果です。
PHPでは、タイムゾーンを自前でもっていてしかもそれが不完全なので
うるう秒の処理を正しく行うことができないのです。
何らかの回避策を探している状況です。
126:116=118
13/02/08 13:01:34.51 YGN757hi
2012-07-01 08:59:59
2012-07-01 08:59:60
2012-07-01 09:00:00
2012-07-01 09:00:01
それぞれunixTimeはなにを返すの?
127:nobodyさん
13/02/08 13:17:00.80
その部分だけmysqlから持ってくるとかじゃあかんのけ
128:nobodyさん
13/02/08 14:07:25.26
>>126
URLリンク(www.andr0o0id.com)
129:nobodyさん
13/02/08 14:28:06.37
>>126
それぞれとはなんのことですか?
環境によって返ってくる値は違ってきます。
うるう秒が正常に機能しているなら
1341100823
1341100824
1341100825
1341100826
でしょうか。
このへんはぐぐればでてくると思いますが。
130:nobodyさん
13/02/08 14:31:28.42
URLリンク(mail.python.org)
131:nobodyさん
13/02/08 15:08:01.45
shell の場合
% date -r 1341100823
2012年 7月 1日 日曜日 08時59分59秒 JST
date -r 1341100824
2012年 7月 1日 日曜日 08時59分60秒 JST
date -r 1341100825
2012年 7月 1日 日曜日 09時00分00秒 JST
date -r 1341100826
2012年 7月 1日 日曜日 09時00分01秒 JST
%
132:nobodyさん
13/02/08 15:34:56.06
ライブラリレベルで作ればいいな
133:nobodyさん
13/02/08 15:46:10.37
現在までの合計挿入秒は25秒らしいけど
PHPで作られたシステムが25秒早くなるってわけじゃないし別によくね?
134:nobodyさん
13/02/08 15:50:03.29
>>133
他がまともな場合には、25秒づれた時刻になります。
また、ある時点からある時点まで何秒経過したかも
正確に計算できない問題もあります。
135:nobodyさん
13/02/08 15:54:06.01
サーバ側の時計と同期してんじゃないの?
136:nobodyさん
13/02/08 15:56:48.82
まともにleapsecs(うるう秒)を扱える言語の例 python の場合
ソース
#!/usr/local/bin/python
import time
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(1341100823)))
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(1341100824)))
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(1341100825)))
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(1341100826)))
実行結果
2012-07-01 08:59:59
2012-07-01 08:59:60
2012-07-01 09:00:00
2012-07-01 09:00:01
137:nobodyさん
13/02/08 15:59:57.59
うるう秒を扱えるシステムと扱えないシステムでunixTimeは互換性が無いのか
138:nobodyさん
13/02/08 16:01:34.06
PHPの限界
139:nobodyさん
13/02/08 16:04:35.53
まともにleapsecs(うるう秒)を扱えない言語の例 php の場合
ソース
#!/usr/local/bin/php
<?
date_default_timezone_set('Asia/Tokyo');
print(date('c',1341100823)."\n");
print(date('c',1341100824)."\n");
print(date('c',1341100825)."\n");
print(date('c',1341100826)."\n");
?>
結果
2012-07-01T09:00:23+09:00
2012-07-01T09:00:24+09:00
2012-07-01T09:00:25+09:00
2012-07-01T09:00:26+09:00
140:nobodyさん
13/02/08 16:09:14.92
x扱えない
o扱わない
141:nobodyさん
13/02/08 16:13:33.83
>>137
互換性がないというか、、、
うるう秒を扱えるシステム で かつ きちんと設定された場合は unixtimeの値は正常なものです。
うるう秒を扱えないシステムのunixtimeは不正な値になっているのです。
142:nobodyさん
13/02/08 16:17:00.86
せめて +25になる UTC設定しろよw
143:nobodyさん
13/02/08 16:19:38.89
>>142
もしかして、php内のタイムゾーンの定義ファイルをいじればOKということでしょうか?
その程度の手間で済むなら問題解決です。
144:nobodyさん
13/02/08 16:41:39.45
>>142
UTCにしてみたけど25秒のズレは改善しませんでした。
145:nobodyさん
13/02/08 16:43:33.31
なんかの勘違いだね
146:nobodyさん
13/02/08 16:49:10.99
>>145
やっぱりそうですか。
UTCの結果
2012-07-01T00:00:23+00:00
2012-07-01T00:00:24+00:00
2012-07-01T00:00:25+00:00
2012-07-01T00:00:26+00:00
147:nobodyさん
13/02/08 17:28:04.55
>>137
URLリンク(jjy.nict.go.jp)
148:nobodyさん
13/02/08 21:46:55.52
>>136
ちなみになんだけど、その文字列を何に使うの?ログファイルに書くためとか?
149:nobodyさん
13/02/09 00:13:26.32
馬鹿は黙ってろ
150:nobodyさん
13/02/09 04:01:28.57
犯罪者予備軍の巣窟PHPスレ
151:nobodyさん
13/02/09 04:29:40.41
>>149
なんで?気になるじゃん。フォーマットした文字列をどう使うかはこの際重要なことだと思うんだ。
152:nobodyさん
13/02/09 11:34:01.33 9zP2+VX5
【OS名】--
【PHPのバージョン】5.3.19
【連携ソフトウェア】--
【質問内容】
割と基本的な内容かもしれんけど…
staticな functionで宣言された、localな変数って、
これ関数callされるたびに再定義されるよね?
普通にスコープ解釈すると、そうなる気がするんだけど。
こんなものがいっぱいあるなら、クラス内でstaticに持っちゃう方が、メモリは消費しても早そうだよね。
arrayで、初期化してる中身は同じものが、staticな関数毎に宣言されてんだけどさ。
153:nobodyさん
13/02/09 12:19:44.04
>>152
はやいかどうかはベンチとってから言えゴミクズ
「ぼくのかんがえたりろん」はブログに書いてろ池沼
154:nobodyさん
13/02/09 13:30:38.55
バーカ、今ベンチ取るコードつっこんでんだよw
おまえらみたいな池沼webコーダが糞コード量産すっから、
火が付いたprojectがこっちに流れてきて迷惑してんだよカスw
155:nobodyさん
13/02/09 15:24:35.95
池沼webコーダって何ですか?
156:nobodyさん
13/02/09 16:26:06.86
変にうるう秒にこだわると、JavaScriptとの時刻関係の連携がウンコになる。
157:nobodyさん
13/02/09 17:56:07.07
インターフェースを実装したクラスって
タイプヒンティングでインターフェースの方を指定した場合上手く動きますか?
158:nobodyさん
13/02/09 17:56:47.15 n2j9+GQ7
すみません、ID出し忘れました
インターフェースを実装したクラスってタイプヒンティングでインターフェースの方を指定した場合、適切に動作しますか?
159:nobodyさん
13/02/09 18:04:12.06
ZF2がそうなので動くんじゃないかな
160:nobodyさん
13/02/09 18:50:32.06
>>158
書き込む前に一目メール欄を確認することすらできないキチは失せろ
161:nobodyさん
13/02/09 21:19:27.58 eCGJr15A
一度に複数の関数を抜けるにはどうしたらよいでしょうか。
function main(){
sub();
}
function sub(){
while(fgets()){
ほにゃらら
}
次の処理ほげほげ
}
function fgets2(){
//ここでエラーが起きる
}
main();
たとえばこのコード、sub()の中でfgets2を呼び出していますが、このfgets2の中でエラーが起きた時に次の処理ほげほげ も飛ばしてreturnさせたいです。
while(fgets()){
を
$a=fgets();
if($a==false){return:}
while($a){
とか書けばできなくはないですが、fgets2を呼び出す所に毎回これを書くのは手間ですので
fgets2の中で一気にmainまで抜ける という事を指定したいです。continue 2;みたいな感じで。
gotoは関数を抜ける事も出来ないみたいですし
162:nobodyさん
13/02/09 22:09:07.69
>>161
php try catch
163:nobodyさん
13/02/10 00:13:31.59
staticなメソッドって作らない方がいいの?
164:nobodyさん
13/02/10 00:24:34.01
>>1
165:nobodyさん
13/02/10 10:05:09.21
function main(){
sub();
}
function sub(){
for($i=0;$i<10;$i++)subsub($i);
}
function subsub($i){
if ($i == 5)throw new Exception('なんか');
print $i;
}
try {
main();
} catch(Exception $ex){print $ex->getMessage();}