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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん2012/01/02(月) 02:03:25.50ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0951nobodyさん2012/01/19(木) 00:04:58.00ID:???
PHP関係あんの?
0952nobodyさん2012/01/19(木) 00:10:32.70ID:Ktv6i/gX
phpでつくるので
0953nobodyさん2012/01/19(木) 00:18:37.88ID:???
データ層の実装方式をどうするかという話だからPHP関係ないよ
まずはWeb3層モデルから勉強するのがおすすめ
0954nobodyさん2012/01/19(木) 00:29:15.94ID:Ktv6i/gX
なるほど、階層分離しておけばデータ層の実装は入れ替え可能なわけですね

実用的な話として1日100万pvぐらいのテキストメインのサイトだと
プレゼンテーション層をphp、
データ層ををmysqlにして10万ぐらいのサーバーで耐えれるもの
でしょうか?
0955nobodyさん2012/01/19(木) 00:42:25.32ID:???
プレゼンテーション層がPHP・・・?
0956nobodyさん2012/01/19(木) 00:44:01.67ID:Ktv6i/gX
ユーザーインターフェースという意味です。
0957nobodyさん2012/01/19(木) 00:48:53.91ID:???
>ユーザーインターフェースがPHP
まずはWeb3層モデルから勉強するのがおすすめ
0958nobodyさん2012/01/19(木) 01:25:44.80ID:BlJkb0zk
ログ書き込み処理なんです・・・これが最高の方法でしょうか?
$fp = fopen($logfile , "r+");
       stream_set_write_buffer($fp, 0);
       flock($fp ,LOCK_EX);
$lines = array();
while(!feof($fp)){
$arr = fgets($fp,1024);
array_push($lines,$arr);
for($i = 0; $i < count($lines); $i++)
fputs($fp, $lines[$i]);
reset($lines);
fclose ($fp);

0959nobodyさん2012/01/19(木) 02:35:11.87ID:iXCkd0MA
芸能人クラスがあって、100人の芸能人を処理するとき、
100個のオブジェクトを作るのが正解?
0960nobodyさん2012/01/19(木) 02:40:29.79ID:???
7. アプリケーション層HTTP ? DHCP ? SMTP ? SNMP ? FTP ? Telnet ? AFP ? X.500

6. プレゼンテーション層SMTP ? SNMP ? FTP ? Telnet ? AFP

5. セッション層TLS ? NetBIOS ? NWLink ? DSI ? ADSP ? ZIP ? ASP ? PAP ? 名前付きパイプ

4. トランスポート層TCP ? UDP ? SCTP ? SPX ? NetBEUI ? RTMP ? AURP ? NBP ? ATP ? AEP

3. ネットワーク層IP ? ARP ? RARP ? ICMP ? IPX ? NetBEUI ? DDP ? AARP

2. データリンク層イーサネット ? トークンリング ? アークネット ? PPP ? フレームリレー
OSI参照モデル - Wikipedia
0961nobodyさん2012/01/19(木) 03:46:47.66ID:???
お前ら構うなよ
レス見ればいつものやつっってわかるだろ
0962nobodyさん2012/01/19(木) 04:05:15.24ID:???
>>959
他にどう考えてるかを書けばレスがつく
0963nobodyさん2012/01/19(木) 10:19:22.80ID:???
pokemonというクラスを作ればピカチュウもフシギダネもそこで管理できる。
だけどポケモンの中には例外があって、進化が分岐するイーブイやバルキー、進化で二種類のポケモンが出てくるツチニン、特定条件で能力値が変わるデオキシスやヒヒダルマ、
これらはこれ専用の例外として管理する必要が出てくるんで、
この場合pokemonを継承したクラスを個別に割り当て、
割り当て後はpokemonクラスとして扱うのが、拡張や管理的にあってる。

だが芸能人を管理するならインターフェースでやるべきだろうな。
説明する余白が足りないので、ここには書ききれないが。
0964nobodyさん2012/01/19(木) 10:25:32.35ID:SD5/h1AI
>>963
OOPに特化されてないPHPで処理するデータ全部をオブジェクトにしていいもんですか?
100個もオブジェクトを作ってアホかとか言われそうなもんで
0965nobodyさん2012/01/19(木) 10:34:40.81ID:???
ここで聞くより上司に聞いたら?
仕事じゃないならそんなのあなたの勝手よ。
0966nobodyさん2012/01/19(木) 11:13:56.61ID:???
特化してないけど、極端に遅くなるわけじゃない。
必要であればたかだか100個くらい作ればいい。
0967nobodyさん2012/01/19(木) 13:31:03.44ID:H4RH65I0
例えば、データベースなどを監視していて
(変更を知らせさえできれば常時監視していなくてもいいのですが)、
変更や新規追加などがあった場合に即座にそれに(その部分に)対応するスクリプトが呼ばれるようにしたいと
思うのですが、このような実装にはどのようにすればいいのでしょうか?

イメージが簡単だと思うので、ここではデータベースを例にとりますが、
DB変更 -> 成功時にDBやメモリにフラグを立てる
-> そのフラグを一定時間毎に確認に行くスクリプト -> TRUEなら処理を始める
のようなものは考え付くのですが、
変更もないのにフラグを一定時間毎に確認に行くスクリプトが実行されたり、
リアルタイム性を求められる場合にそれでは時間差が致命的になったりします。

DB変更成功時にsystem()を使ってフラグ確認スクリプトの実行とかも考えたのですが、
何かいい方法はないものでしょうか?
アドバイス頂けたらと思います。
0968nobodyさん2012/01/19(木) 13:36:57.41ID:???
トリガじゃなくて?
0969nobodyさん2012/01/19(木) 13:47:12.23ID:???
変更したときに処理すればいいだろ。
0970nobodyさん2012/01/19(木) 13:56:19.37ID:H4RH65I0
>>968
あっ、トリガです
書いていた時、何故か名前を思い出せなくて(汗)

>>969
基本的にCLIでのスクリプト処理になるのですが、
処理を分担したいと思いまして
また、言語もPHPだけではなくPythonとかも絡めて使おうと思っています
実際はもっと複雑ですが、簡単に書くと、PHP -> Python -> PHPとしたいと考えております
なもんで、DBなどが変更になった際に即座にPHPスクリプトを呼び出すとかしたいと考えております

宜しくお願いします
0971nobodyさん2012/01/19(木) 14:24:05.75ID:???
PHPと関係ないだろ。
データベースを書き換えたらPHPスクリプトを呼び出すか、データベースを監視してPHPスクリプトを呼び出せよ。
前者の方が常駐しない分、優れてると思うが。
0972nobodyさん2012/01/19(木) 14:28:30.57ID:???
後者はデータバックアップソフトで、更新があったらバックアップをとるようなソフトの仕組みと同じ事だろ。
OS固有の監視機能を使うか、whileなどで定期監視。
0973nobodyさん2012/01/19(木) 14:49:05.54ID:???
>>958
これはひどい

ログみたいなものだったらfile_put_contents()で1行ずつappendしていったらいいだろ
0974nobodyさん2012/01/19(木) 15:10:13.93ID:nuUVl5ly
教えてエロイ人

どーやって勉強すればイイ
右手休めて、さっさと教えれや

求職ちゅうの無職27歳
0975nobodyさん2012/01/19(木) 15:13:15.71ID:???
27無職はもう
終わっとります
0976nobodyさん2012/01/19(木) 15:19:51.27ID:???
教えてエロイ人

さむいよ、ハラ減った
顧客管理プログラムのソース、クレクレ

    
0977nobodyさん2012/01/19(木) 15:50:56.98ID:???
>>976
要件をどーぞ。
0978nobodyさん2012/01/19(木) 16:21:04.34ID:???
顧客登録や商品登録して
オーダー管理やカスタマの情報整理して業務を効率化したい
カスタマ検索/更新/削除ができて、購入履歴を閲覧できて
できれば、登録商品の購入者の年齢・性別、売上数の順位がでるのがほすい
0979nobodyさん2012/01/19(木) 16:31:57.68ID:???
>>978
顧客とカスタマと購入者って同じ?別物?
PHP本のサンプルにまんまありそーだなw
09809782012/01/19(木) 16:45:08.80ID:???
おなじだよ、でも漏れのphp本には乗ってないorz
0981nobodyさん2012/01/19(木) 17:32:45.16ID:???
結構基本的な構造っぽい。
登録、順位とかはSQLだけでほとんどできるから、
ほんと必要なデータをMySQLに登録する部分さえ作れば、5割出来たようなものだよ。

とりあえず、980が次スレなんで、
0982nobodyさん2012/01/19(木) 20:33:23.99ID:???
PHPの肝は配列だ
間違いないね
最も重要
0983nobodyさん2012/01/19(木) 20:40:34.39ID:???
cronで定期的に集めたデータを、
facebook graph api を使ってfacebookのウォールに投稿してます。
投稿したデータを削除したい場合もあるんですが、
facebook graph apiって、投稿を削除出来るんでしょうか?
投稿IDは保存してあります。
0984nobodyさん2012/01/19(木) 21:03:04.37ID:???
PHPと関係ない。Facebookのヘルプよめ。
0985nobodyさん2012/01/19(木) 21:13:30.56ID:H4RH65I0
trim()とかでは全角空白などは取り除いてくれませんが、
皆さんはどのようにして対処していますでしょうか?
preg_replace()で一度全角空白を半角空白とかにして・・・とか考えられますが、
どのように実装していますでしょうか?
0986nobodyさん2012/01/19(木) 21:16:07.36ID:???
>>984
ありがとう、削除できました。
ヘルプにある削除の説明の下の、コメント削除の部分を見て試行錯誤してました。
0987nobodyさん2012/01/19(木) 21:42:54.00ID:???
>>980
はよ次スレ立てろやクズ
0988nobodyさん2012/01/19(木) 21:48:44.17ID:???
>>985
mb_convert_kana(?, 'KVas')
とか
preg_replace('/ /', ' ', ?)
とか
単純に全角を含めた前後の空白を取り除きたいなら
preg_replace('/^[\s ]+|[\s ]+$/usi', '', ?)を
mb_trimとかそんな感じの関数にして使うとか
0989nobodyさん2012/01/19(木) 22:09:10.57ID:???
>>987
そう思うならスレ立てようか?って聞くのが普通だが。
0990nobodyさん2012/01/19(木) 22:21:25.63ID:???
じゃあ立てれば
0991nobodyさん2012/01/19(木) 22:30:54.72ID:???
>>990
わりと回答してるけど、このスレあんまり機能してない感じがしない?
なんかなくてもいい気がしてるんよ。
0992nobodyさん2012/01/19(木) 22:53:52.40ID:???
まぁいらんわな
ニートのおっさんが暴れてるだけだし
0993nobodyさん2012/01/20(金) 00:13:15.31ID:W2I9U5WM
phpには分散オブジェクトを実装した人いますか?グクッても情報がなく困っています。
0994nobodyさん2012/01/20(金) 00:14:06.19ID:???
>>985
第二引数に指定すればいいんでは?
0995nobodyさん2012/01/20(金) 03:51:56.34ID:A0g11Z1K
header("Content-type:image/jpeg");
readfile($filename);
と画像を出力しているのですが、
何回更新してもStatus Codeが200でキャッシュされていないようです。
これだとリクエストするたびに画像読み込みが発生するので304で読み込んでほしいのですが、
どうしたらいいでしょうか?
0996nobodyさん2012/01/20(金) 04:00:22.22ID:???
動的コンテンツに対して勝手にはしてくれないよ。
リクエストヘッダを見ないといけないし、リクエストヘッダをつけたくなるように仕向けなければならない
0997nobodyさん2012/01/20(金) 04:25:01.43ID:A0g11Z1K
>>996
expires, Etag, Cache-Controll
といろいろ試してみましたが304にならなかったです・・・
0998nobodyさん2012/01/20(金) 05:42:24.68ID:???
しょうがねえから俺たてるよ
0999nobodyさん2012/01/20(金) 05:45:14.41ID:???

http://kohada.2ch.net/test/read.cgi/php/1327005803/
1000nobodyさん2012/01/20(金) 06:27:40.12ID:???
>>997
んだから、304は自分で判断して、自分で304を返さないといけない。
その判断基準となる情報をブラウザがリクエストヘッダにつけるように仕向けることをしなければならない。
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。