トップページphp
982コメント234KB

PHP総合雑談スレ

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/01/14(月) 21:35:11ID:???
PHP全体の雑談のようなスレがなかったからたてた
反省はしていない
0717nobodyさん2009/04/26(日) 12:46:27ID:???
例で言ったら俺は車はあまり好きくないかな
メッセージのやり取りによる協調システムって雰囲気が出ないから

>>716
あと「これはポリモー(ryの説明だけどjavaには型の制約があって面倒なだけなんだからね!」って書いとくべきw
0718nobodyさん2009/04/26(日) 19:24:39ID:???
現代的な開発プロセスではOOは欠かせないお・・・
だが本質論では一行たりともコードは書けん・・・
コードが書けんと新人くんが使えるようにならん・・・
だからStrutsの本を2冊ほど与えて放置するお!

お前らの現場は大丈夫ですか?
0719nobodyさん2009/04/26(日) 19:28:34ID:???
欠かせないお、放置するお とかいう上司は消えてほしい
0720nobodyさん2009/04/26(日) 19:35:10ID:???
だからドカタ仕事ならフレームワークだけ覚えて使えばいいだけ。
ってかOOはモノの見方であって、技術とかじゃないし。
0721nobodyさん2009/04/26(日) 19:37:03ID:???
その見方も片面に過ぎんな。
0722nobodyさん2009/04/27(月) 08:16:54ID:???
OOは分析・設計よいツールだ。一部の名人芸ではなく共有可能なテクノロジーとして練られてきた認識の方法論

しかしそれはかなりマクロな話であって、例えばある言語でプリミティブな型がオブジェクトであったり制御構造がメソッドであるようなこととは断絶がある
ミクロにはOOとはコードパターンでありクラスリテラルであり、何よりselfだ
java以降OOが急激にややこしくなったのは、すべてマクロモデルからコードが導けると誤解したり、上で言われたドメインをごっちゃにしたり、自分が理解した一部だけを狂信する俄仕込みの人間が増えたせいもあるだろう

PHPでOOをやろうと思う人間と、RubyでOOをやろうという人間がいたら、言語の思想を反映して、両者の思い描くOOはかなり異なっているかもしれない
PHPのOOを学ぼうと思う場合、あまりOOの歴史などには触れずSPLなど見ながら実践的な知識を得ればそれでいいと思う
0723nobodyさん2009/04/29(水) 13:20:45ID:???
PHPって例外機構があるのに、標準関数とかのレベルでエラーがあっても例外投げるわけじゃないよね。なんか変。
0724nobodyさん2009/04/29(水) 13:24:53ID:???
そりゃ標準メソッドでないもん
0725nobodyさん2009/04/29(水) 14:39:12ID:???
必要なら自前で例外を投げるエラーハンドラを設定すればいいじゃない。
0726nobodyさん2009/04/29(水) 15:59:40ID:???
ろくなクラスライブラリがないからな。例外機構が役に立たない。
0727nobodyさん2009/04/29(水) 16:02:37ID:???
あるじゃんPEARなりZFなり
0728nobodyさん2009/04/29(水) 20:48:44ID:???
全部自分で例外投げるのも面倒なんだよね。
0729nobodyさん2009/04/29(水) 20:50:45ID:???
だから>>725だっつってんだろ
0730nobodyさん2009/04/29(水) 21:43:00ID:???
それが面倒でしょ。
既に稼働中のWebサイトではやりにくいし。
0731nobodyさん2009/04/29(水) 21:43:50ID:???
そりゃ最初からそうしなかったお前が悪い
0732nobodyさん2009/04/29(水) 22:02:15ID:???
最初はPHP4だったサイトもあるわけ。
0733nobodyさん2009/04/29(水) 22:08:52ID:???
未だに4なんか使ってんの?
0734nobodyさん2009/04/29(水) 22:18:17ID:???
新規に作るのは少なくても、既存のサイトはいくいらでもある、
0735nobodyさん2009/04/30(木) 03:58:41ID:???
じゃ自分が悪いな
0736nobodyさん2009/04/30(木) 08:21:54ID:???
メモリ不足を例外処理できるようにしてくれ。
0737nobodyさん2009/04/30(木) 10:18:52ID:???
post_max_size超えた場合の例外処理ってPHP側で出来る?
今はapacheのLimitRequestBody で制御してる
0738nobodyさん2009/04/30(木) 13:21:04ID:???
だいたいPHPカンファレンスでアンケート取って、3割の開発者はフレームワーク未経験なんだから、世間一般でのPHPの使われ方は想像以上に遙かにプア。
0739nobodyさん2009/04/30(木) 13:24:31ID:???
わざわざコストかけてフレームワーク使わなくても済むほど
言語構造が親切で関数・ライブラリが充実
0740nobodyさん2009/04/30(木) 13:29:03ID:???
>>738
もともとWeb向けにできてるし、フレームワークとか使わなくてもいいんじゃないの。

個人的にはパフォーマンスから考えて、SQLはページ、機能毎に作るべきだとも思ってるんで、
カプセル化によるモデル化とか本当にすべきなんかなぁとも思ってる。
0741nobodyさん2009/04/30(木) 14:33:11ID:???
PerlやRubyやPythonではFW未経験の割合は8割超えるんじゃないだろうか
PHP案件がすべてCMSがカバーするようなコミュニケーションやUGM重視のサイトの自前構築だと前提するのは無理があるんじゃないかなあ
0742nobodyさん2009/04/30(木) 14:54:15ID:???
>>737
ログを読むとかw
0743nobodyさん2009/05/01(金) 01:09:05ID:???
>>751に釣り針仕掛けておいた。
負けず嫌いの馬鹿が、すぐに食いつくから楽しみだ。
0744nobodyさん2009/05/01(金) 02:52:35ID:???
Shibuya.pmでアンケートを採ればウェブフレームワーク経験率は100%に近いと思う。
0745nobodyさん2009/05/01(金) 02:54:16ID:???
で?
っていう
0746nobodyさん2009/05/01(金) 15:28:38ID:???
date() と strftime() の違いがよくわからないのですが、
教えていただけないでしょうか?
0747マニュアルクン2009/05/01(金) 15:34:00ID:???
つマニュアル
0748nobodyさん2009/05/01(金) 15:44:30ID:???
お前は巣から出てくんなよ
0749マニュアルクン2009/05/01(金) 15:54:56ID:???
マニュアルに書いてありますよ^^
0750nobodyさん2009/05/01(金) 17:56:14ID:???
packで生成したバイナリ文字列をMySQLのテーブルに挿入して、
SELECTで取りだそうとしているのですが失敗していまいます。

文字列が代入されている変数を直接
INSERT INTO table_name (my_strings) VALUES ('" . mysql_real_escape_string($binary_strings) . "')
こんな感じで挿入して、SELECTも同様の記述をしています。

よければヒントをお願いします
0751nobodyさん2009/05/01(金) 21:29:51ID:???
失敗って?
0752nobodyさん2009/05/01(金) 22:06:09ID:???
BLOB型じゃないとか?
0753nobodyさん2009/05/01(金) 22:23:58ID:???
すみません。原因が分かりました。
COOKIEにから読み込んだ文字列をWHEREの条件にしていたのですが、
この文字列が希望通り取りだせていないことが原因でした。

UTF-8の文字コードならすべてCOOKIEで扱えると思っていたのですが、
特殊な文字コード(日本語環境では使わない文字コード)は、
COOKIEに格納できないのでしょうか…?
0754nobodyさん2009/05/02(土) 00:21:22ID:???
COOKIEから読み込んだ文字列は
セキュリティ上、危険なので
エスケープしないとだめよ
0755nobodyさん2009/05/02(土) 00:22:05ID:???
あとmagic_quotes_gpcがONの環境では、
クッキーの中に¥とかがあると勝手にエスケープする
0756nobodyさん2009/05/02(土) 01:26:26ID:???
magic_quotes_gpcをOffにしたら解決しました!
ありがとうございました。
0757nobodyさん2009/05/02(土) 01:27:09ID:???
おお。
漏れが適当に言ったアドバイスで
問題が解決してるwww
0758nobodyさん2009/05/02(土) 02:02:09ID:???
mysqli_multi_query() をコールした後で mysqli_query をコールしようとすると、
後の方が実行されないのですが、どうしてなのでしょうか・・・?
0759nobodyさん2009/05/02(土) 02:08:50ID:???
エラー出してみれば?
0760nobodyさん2009/05/02(土) 02:18:11ID:???
結果セットをすべてはき出さなければ、次のクエリは発行できないということでした。

mysqli_query()はmysqli_free_result()で解放できるのですが、
mysqli_multi_query()の結果を解放する方法がわかりませんでした。

お知恵をください。
0761nobodyさん2009/05/02(土) 02:20:37ID:???
普通に順次処理して全部開放するんじゃだめなの?multi_queryとか使ったことないけど
0762nobodyさん2009/05/02(土) 02:42:48ID:???
insertやupdateだけが目的のときなどに、
無意味なループで解放するのは気が引けてしまいます。
なにか良い方法はないものでしょうか…?
0763nobodyさん2009/05/02(土) 02:51:00ID:???
意図がよくわからんが実行したけど解法しないことがあるのはなんで?
0764nobodyさん2009/05/02(土) 08:13:20ID:???
よくわからんけどここ読んだ?
ttp://q.hatena.ne.jp/1168618057
0765nobodyさん2009/05/02(土) 08:18:45ID:???
雑談スレをサポセンにしてるのは誰だー
0766nobodyさん2009/05/08(金) 22:28:47ID:???
雑談じゃなくてすみません
サポートが終了してるCGI(PHP)でエラーが出るので
なにかわかる人がいたら教えてください
という質問のできるスレはありますか?
0767nobodyさん2009/05/09(土) 00:38:36ID:???
△▲ WebProg 初心者の質問 Part19 ▼▽
http://pc11.2ch.net/test/read.cgi/php/1236265877/
07687662009/05/09(土) 09:29:42ID:???
>>767
ありがとうございます
そちらで質問してみます
0769nobodyさん2009/05/12(火) 09:35:22ID:E5yo7YEg
>>743
それのどこが釣り針?
0770nobodyさん2009/05/12(火) 10:30:49ID:???
マジレスすると自分で釣り針張ったと主張する人間はとっくに負けている
0771nobodyさん2009/05/13(水) 12:11:00ID:fUNIaPYN
MySQLに取り込んだ画像を、PHPで表示させることってできる?
Postgreなら知っているが
0772nobodyさん2009/05/13(水) 12:13:17ID:???
できるよ
0773nobodyさん2009/05/13(水) 12:29:07ID:qwl32xg0
>>772
どうやって?
0774nobodyさん2009/05/13(水) 12:32:29ID:???
>>771
マジレスするとDBに画像を入れるとかバカですか?
0775nobodyさん2009/05/13(水) 13:09:48ID:???
>>774
社内のファイルサーバをDBでやってるオラクルの悪口はそこまでにしておけ。
0776nobodyさん2009/05/13(水) 13:15:57ID:???
>>773
このあたりでも参考にしたら。
http://jp.php.net/manual/ja/function.header.php#70328
0777nobodyさん2009/05/13(水) 16:30:34ID:???
ところでいまさらながらPHPにgoto文が追加されることについてどう思うよ
0778nobodyさん2009/05/13(水) 20:32:14ID:???
そんなGOTOより
\とarray()が何とかなってくれれることを願いたい
0779nobodyさん2009/05/13(水) 21:19:02ID:???
俺は欲しい機能は、ブロックスコープかなあ。無理だろうなあ。
0780nobodyさん2009/05/13(水) 21:24:00ID:???
それより finally だろ。
0781nobodyさん2009/05/13(水) 21:29:49ID:???
わたしゃも少し背が欲しい
0782nobodyさん2009/05/13(水) 21:37:48ID:???
>>781
チビ乙
0783nobodyさん2009/05/14(木) 12:37:22ID:???
女房のへそくり見てみたい
0784nobodyさん2009/05/15(金) 10:20:40ID:???
CodeIgniterでDBドライバにPosql使いたい。
0785nobodyさん2009/05/18(月) 12:41:57ID:???
break 3;とかで任意のループに抜けるような動作するぐらいならgotoループさせたほうが
まだきれいだと思うのです。
場合によるけど
0786nobodyさん2009/05/18(月) 16:25:43ID:???
StopIterationExceptionとか適当な例外をつくって、それをスロー&キャッチでおk
0787nobodyさん2009/05/18(月) 17:41:24ID:???
例外じゃなくてそれはアルゴリズムだろ
0788nobodyさん2009/05/18(月) 22:00:24ID:???
ループ抜けるためだけに例外を使うくらいならGOTO使った方が万倍マシだろ
>786みたいな濫用をする奴がいるから例外は嫌われるんだ
0789名無し募集中。。。2009/05/18(月) 22:09:09ID:wP2DRNT9
例外のキャッチは処理が遅いから(PHPは知らんけどJavaやC#はそう)
普通にbreakで抜けた方がいいよ
0790nobodyさん2009/05/18(月) 22:51:36ID:???
>PHPは知らんけど
0791名無し募集中。。。2009/05/18(月) 23:03:24ID:wP2DRNT9
PHPでそういう書き方に慣れると他の言語でも同じ書き方しようとするだろ
だからやめろって言ってるわけで
PHPでは大丈夫だからこの書き方がいいねって事には絶対ならん
0792nobodyさん2009/05/19(火) 00:45:26ID:???
そんな多重多重なループにならないよう設計すればいいんじゃないの
0793nobodyさん2009/05/19(火) 13:24:11ID:???
多重ループに再帰もつかえないこんな世の中じゃ
0794nobodyさん2009/05/19(火) 21:15:35ID:???
プリズン♪
0795nobodyさん2009/05/23(土) 11:38:09ID:5mrj8rHu
最近PHPを使ってると、つい連想配列を使いまくってしまうんだけど、
これって他の人から見たらどうなのかな?
$hoge_list[$i][$username][$year][$month][$day] = array('hoge1'=>$hoge1,'hoge2'=>$hoge2,'hoge3'=>$hoge3);
みたいなPHP以外の言語ではさすがにないよなぁって書き方してる事が増えてきてるので、
どんな風に感じるのかおしえてください
0796nobodyさん2009/05/23(土) 11:53:19ID:???
$yearと$monthと$dayを分ける意味はよくわからないけど普通じゃね?
0797nobodyさん2009/05/23(土) 12:17:27ID:???
俺も連想配列はよく使うけど、そこまでの多重ではない。
$hoge_list[][]が多く、まれに$hoge_list[][][]ぐらい。
0798nobodyさん2009/05/23(土) 13:53:06ID:4jvZ/Q8K
変数宣言せずにいきなり多次元の配列に代入とかな
0799nobodyさん2009/05/23(土) 14:01:33ID:???
Notice切ってる奴はもれなくカス
0800nobodyさん2009/05/23(土) 14:35:17ID:???
>795
どう感じるかといえば、うちの会社にいなくて良かったなぁ、と感じるな。

つうか、なんでそんな多重配列?
そんなデータ構造が必要になるシチュエーションを思いつかないんだが。
0801nobodyさん2009/05/23(土) 14:40:52ID:???
普通に使う分にはやっぱ2重が多いな。3重がたまに。
設定項目とか、複数のカラムがあってキーに関連するデータを
取り出したいような場合はそれ用の汎用的なクラス作って管理してる。
0802nobodyさん2009/05/23(土) 15:00:55ID:???
PHP自体が富豪プログラミングの集大成みたいなもんだからな
入るんだから入れちゃえばいいんじゃね?みたいになっちゃう
CとかJavaで仮に同事ができるとしても、
それやったら目に見えてメモリバカ食いするのが解って怒られちゃうけど
PHPだと間違って動いちゃうのでなんともしがたい
0803nobodyさん2009/05/23(土) 15:13:39ID:???
間違って?
0804nobodyさん2009/05/23(土) 15:21:45ID:???
最近だと
calender[month][week][day]
なんてのを作って
smartyに丸ごと渡して、表示してた

この先の処理で使わない変数をunsetする事もあるけど
CやJavaと違って意味薄いしなあ
0805nobodyさん2009/05/23(土) 15:59:09ID:???
よく[month]みたいに書く奴いるけど
['month']だろ
monthが定数だったらどうすんだよ
0806nobodyさん2009/05/23(土) 16:03:52ID:???
定数は普通大文字で書くだろ
0807nobodyさん2009/05/23(土) 16:15:29ID:???
お前は何を言ってるんだ
0808nobodyさん2009/05/23(土) 16:16:13ID:???
大文字でしか定数が設定できないから問題ないってのなら解るが
それは大文字で設定するのが普通というのとは大きく意味が異なると思うぞ
途中でdefine('month',1)なんて追加されたら恐ろしいことになる
0809nobodyさん2009/05/23(土) 16:17:09ID:???
だからあれほどE_NOTICEを無効にするなと言ってるだろうに
何度も言うがNotice切ってる奴はもれなくカス
0810nobodyさん2009/05/23(土) 16:17:59ID:???
[month]って書いたってエラー出ないだろ?
エラーじゃないんだから何の問題もないのに
自分が勝手に決めた規約を押しつけるのは良くない
0811nobodyさん2009/05/23(土) 16:19:34ID:???
残念ながらつい50秒前に論破されてますよ
0812nobodyさん2009/05/23(土) 17:11:50ID:???
>>809
pear使うとエラーが出まくるんだよ
0813nobodyさん2009/05/23(土) 17:25:19ID:???
え?いまなんて?
0814nobodyさん2009/05/23(土) 17:33:03ID:???
もうちょっと大きな声でたのむ!
0815nobodyさん2009/05/23(土) 19:14:03ID:???
>[month]って書いたってエラー出ないだろ?
>[month]って書いたってエラー出ないだろ?
>[month]って書いたってエラー出ないだろ?
>[month]って書いたってエラー出ないだろ?
>[month]って書いたってエラー出ないだろ?
0816nobodyさん2009/05/23(土) 20:42:11ID:???
noticeは確かにエラーではないけどwww
■ このスレッドは過去ログ倉庫に格納されています