08/07/04 18:40:38
スレ違い
332:nobodyさん
08/07/04 18:42:27 ya62/r1Y
>>331
スレ違いというより、むしろあなたの勘違いです。
333:nobodyさん
08/07/04 18:47:04
まぁまぁ、そう熱くならずに自分のおならの臭いを嗅いでエクスタシー感じようよ!
334:nobodyさん
08/07/04 18:48:38
>>327
確認しましたがしっかり書けていました
ファイル名をフルパスでも試して見ましたが同じでした
うーん、formatOutputってあんま意味ないのか…
がっかり
335:nobodyさん
08/07/04 18:55:24
>>330
一回のリクエストで10秒掛かるのの処理を分散した言って事?
336:nobodyさん
08/07/04 18:59:20
数万行のCSVファイルを読み込み、指定した行列のものを取り出す場合では、
数万行のファイル一つを読み込み表示させる方法と
数万行のファイルを分割して、それぞれ読み込み表示させる方法では速度に違いはでてきますか?
どちらが効率よいでしょうか。
337:nobodyさん
08/07/04 19:02:05
DBを使う
338:nobodyさん
08/07/04 19:20:06
>>336
例えば1000行ごとにファイルを分けて1100行目なら二つ目のファイルを読み込むってことか?
こっち
339:nobodyさん
08/07/04 19:20:33
>>337
でたなDB厨
340:nobodyさん
08/07/04 19:29:11
任意のテキストファイルを読み込み、その内容をブラウザ上に表示
と、いうことをやりたいです。
プログラム上でテキストファイルを指定し、表示させることまでは出来ました
ですが、『任意のファイルを選択』させることが出来ません
何か良い方法や考え方は無いでしょうか?
教科書など持っていないので、オススメの本やサイトがありましたら、紹介していただけるとうれしいです
341:nobodyさん
08/07/04 20:37:53
誰が選ぶんだ。俺か?断る!
342:nobodyさん
08/07/04 21:17:16
>>340
ターゲットディレクトリ内に存在するファイルの個数を取得して、
その数だけの範囲を持つ整数の乱数=nを発生させて、
該当するn番目のファイルを開くようにすれば良いんじゃね?
343:nobodyさん
08/07/04 21:23:09
>>330
これ、釣りじゃないの?
こんな知識、というか思考力で過負荷になるようなサイト構築できるのか?
信じられん。よほどサイトコンテンツが良いのか、サーバにMSXでも使って
いるんじゃないのか?
344:nobodyさん
08/07/04 22:36:40
>>340
input type="file"
345:nobodyさん
08/07/04 22:53:21 zZLzuSUy
いまだにXPとか使ってるヤツって何なの?一般人なの?
スレリンク(liveplus板)
346:nobodyさん
08/07/04 23:22:17
>>343
我々の想定外のリソース超消費ロジック組んでるんだとオモ
347:nobodyさん
08/07/05 03:42:00
数万行のファイルならすぐに過負荷になる。PHPのようなブラウザ表示デバッグだと、その時点で気付くはず。
348:nobodyさん
08/07/05 03:52:36
>>347
たかだか10MB程度のファイルで?
一行256バイト×5万 = 12,800,000 = 約12MB
349:nobodyさん
08/07/05 04:08:23
凄まじい密度だな
350:nobodyさん
08/07/05 04:14:55
密度? CSVファイルで?
なんのこといってんの?
351:nobodyさん
08/07/05 04:17:59
お前ら早朝に喧嘩してないで、
ジョギングでも行ってこいよ。もう外は明るいぞ。
352:nobodyさん
08/07/05 04:19:18
<?xml version="1.0" encoding="UTF-8"?>
<head>
<score sort_no="2">
<score sort_no="1">
<score sort_no="3">
<score sort_no="4">
</head>
こんな感じのxmlファイルをsort_noでソートして保存しようと思って、simplexmlで読み込んで
usort、uasort、uksortやったけど全部ダメだった
まぁオブジェクトだから当然と言えばそうなんだけど、オブジェクトをforeachする時に出てくる順番を変える方法教えて下さい
php5です
353:nobodyさん
08/07/05 04:36:38
出来ました
foreach($dom->score as $value){
$dom2[]=$value;
}
uksort($dom2,"sort_list");
こんな感じで
リファレンスって難しいなあ
354:nobodyさん
08/07/05 04:53:16
お前は何を言ってるんだ
355:nobodyさん
08/07/05 04:55:12 FcvNsP01
出来てなかった…
356:nobodyさん
08/07/05 08:16:24
>>348
とりあえず一回、「PHP 配列 メモリ」で検索してみたほうがいいんじゃない。
メモリ使用量はかっこいいぜ。
357:nobodyさん
08/07/05 09:02:09
∩___∩
(ヽ | ノ ヽ /)
(((i ) / (゜) (゜) | ( i))) …なんちゃってねっ! チンポっ☆
/∠彡 ( _●_) |_ゝ \
( ___、 |∪| ,__ )
| ヽノ /´
| /
358:nobodyさん
08/07/05 11:33:06 oP1dT0fT
test.php?1の場合、$no=1のようにGETリクエストの値を動的に変数に入れたいんですけど、どういった方法が存在しますか。
359:nobodyさん
08/07/05 11:45:07
noなんてどこにも出てきてないのに動的にとか意味がよく分からない
360:nobodyさん
08/07/05 11:46:38
>>358
$no = $_SERVER['QUERY_STRING'];
361:nobodyさん
08/07/05 12:49:00
>>358
適当なフレームワークのソース呼んで、ルーティング処理パクレ
例えば、
symfonyなら /index.php/1を
/index.php/hogeModule/hogeAction/no/1みたいにしてくれるのを設定ファイルでかけるから
362:358
08/07/05 13:01:14 oP1dT0fT
>>359-361
ありがとうございます。
参考にします。
363:nobodyさん
08/07/05 13:06:33
いやそれだけかよ。言葉足らずなんだからちゃんと説明しろよ。
364:nobodyさん
08/07/05 16:40:16 7nNiVjXj
>>363
言葉が足りていても、私の時には全然回答もしてくれませんでしたが。
Apache複数起動で悩んでいる中年SEより。
365:nobodyさん
08/07/05 16:50:08
。・゚・(ノД`)・゚・。
366:nobodyさん
08/07/05 16:50:15
しつこいな
回答あるだろ
367:nobodyさん
08/07/05 16:52:18
複数起動はかえって負荷かかる
368:nobodyさん
08/07/05 16:59:30
>>364
何を根拠に言葉が足りていたとw
369:nobodyさん
08/07/05 17:05:28
>>364
たとえ2つPHP実行しても速くならないよ。
玉子焼き1000個同時に焼いても1秒で焼けない。1個と同じ時間かかる。
370:nobodyさん
08/07/05 17:05:53
負荷分散の対策が、どういった理屈で複数起動にたどり着いたのかが不思議。
同一サーバーでの複数起動って意味だよね?何かあるんだろうか。
それとも日本語が不自由で考えてることをちゃんと文章化できていないのか。
てか、どっちにしろPHPとはまったく関係ないからスレ違いになるのか・・・
371:nobodyさん
08/07/05 17:09:04
遅い原因調べないSEはいなくなって欲しい。
372:nobodyさん
08/07/05 17:13:56 7nNiVjXj
前にも書きましたが、スクリプトがAとそこから呼び出しているBがあります。
スクリプトAは、2000行以上ありますが、0.1秒程度で終わりますが、
スクリプトBは、400行しかないのに、10秒前後もかかります。
そのことから、スクリプトAを80番ポートで動かし、
スクリプトBを10分割して、81~90番ポートで動かせば1秒で終了するという見積もりです。
ただ、やり方がよくわかりません。
スクリプトBが遅いのも原因不明です。
phpがインタプリタ言語だから遅いって言ってしまえばそれまでですが、
だからといって10秒は遅すぎます。
負荷分散する方法としてこれ以外に思いつきません。
373:nobodyさん
08/07/05 17:16:26 7nNiVjXj
もう一つ付け加えると、Apacheはマルチスレッド処理といって、
平行処理ができると聞いています。phpの中だけで並行処理ができる方法があれば、それを教えて頂く方が簡単ですが。
374:nobodyさん
08/07/05 17:16:51
ソースうp
375:nobodyさん
08/07/05 17:19:32
その前に、その400行で何をやっているの?
ざっくり400行じゃなくて、遅い箇所があるとおもうけど。
376:nobodyさん
08/07/05 17:24:01 7nNiVjXj
スクリプトBでは、単にデータベース(MySQL)と接続して、
データを取得して更新して、取得したデータをスクリプトBに返す処理しかやっていません。
MySQLは、処理速度が速いデーターベースと聞いておりますし、
それ以外では、文字列を編集する処理をやっていますが、それはデータベースにデータを渡す際の
エスケープ処理です。ソース全体を呼んでみましたが、特に遅いと思われる箇所もありませんでした。
377:nobodyさん
08/07/05 17:28:11
じゃあDBが速くならないとPHPが速くても速くならないよ。
378:nobodyさん
08/07/05 17:30:44
>>376
とりあえずさぁ、そのスクリプトに時間計測するコードを入れて、
一番遅い所を一行に絞って、そのコードをココに貼ればわかるよ。
379:nobodyさん
08/07/05 17:42:07
どう考えても処理のある点がボトルネックになってるだろうに
phpはインタプリタ言語だから遅くても仕方ないと
納得する発想がPGとしてありえないってw
てか最初からずっと同じこと言われてるじゃん。少しは質問の仕方も進歩してくれ。
380:nobodyさん
08/07/05 17:52:45
プログラムする人ってこんな能書きをダラダラ言う人多いね。
キモイ。
381:nobodyさん
08/07/05 17:54:33
>>376
マルチスレッドが知りたいのなら、「PHP マルチスレッド」でググリなよ。
ここで説明するより分かり易いところがいくつか見つかるよ。
Apache複数起動とかポートがどうとか、
PHPとは関係ないことを言うから、スレ違い、ネタだと判断されたんだよ。
「マルチスレッドを利用する方法を知りたい」だけでいいじゃん。
382:nobodyさん
08/07/05 18:04:06
マルチスレッドも関係ないだろw
383:nobodyさん
08/07/05 18:05:40
正直その程度の知識で金もらって仕事してんの? と思うわけだが
できない事はできないって言うのも仕事の内ですぜ
384:nobodyさん
08/07/05 18:06:06
>>376
> データを取得して更新して、取得したデータをスクリプトBに返す処理しかやっていません。
えーと、ウェブアプリに限らずほとんどの処理は
データを取得して、更新して、取得したデータを何かに渡す物ですが?
その処理の内容で遅くないと判断できるわけが無いよね?
いいか、あんたがヘボだから、あんたが作ったソフトが重いんだ。
技術不足なんだよ。あんたは。
385:nobodyさん
08/07/05 18:12:56
>>376
君には難しいことを言ってもわからないと思うから
技術者じゃなくてもわかることを聞くねw
サーバー費は月いくらかかってる?
386:nobodyさん
08/07/05 18:19:34
もう答えが出てるなら、まったく関係ないところをネチャネチャ叩くなよ気持ち悪い奴らだな
387:nobodyさん
08/07/05 18:20:04
>>383
できないって最初から言ってるのにどんどん小難しい案件が舞い込んできます。
当然やりますが。でも出来ませんっていつも言います。
388:nobodyさん
08/07/05 18:28:07
物理的に台数増やしてロードバランス、これ
でもDBサーバが先に悲鳴をあげるだろうから
レプリケーションもやっとけ
389:nobodyさん
08/07/05 18:36:15
>>387
口で言うだけなら誰でも出来るんだよ。
390:nobodyさん
08/07/05 18:51:52
>>382
関係なくはないだろう。早くなるとは思えんが。
391:nobodyさん
08/07/05 18:55:18
ボタンを押すと飛ばすようにするにはどうすればいい?
print"で<a href=~>~</a>
で、リンク生成は出来るんだが、
392:nobodyさん
08/07/05 18:58:30
URLリンク(www.tagindex.com)
ここのページの様にフォームに入力してからボタンを押すと、各検索エンジンに飛ばしたいんだけど。
393:nobodyさん
08/07/05 19:00:32
ネタじゃなかったのか…。そんなに案件が降ってくるなら他の専門家に
任せて自分はちょっとピンハネの方が顧客も自分も幸せだと思うぞ。
現在の技術うんぬんよりも、解決方法にたどり着く術が間違っているから。
394:nobodyさん
08/07/05 19:20:33
>>392
「検索エンジン php」
395:nobodyさん
08/07/05 19:23:08
ネタか真性か判断するPHPコードを教えてくん。
396:nobodyさん
08/07/05 19:33:45
>>394
㌧、php配布されているのじゃなく、自分で作りたいんです
397:nobodyさん
08/07/05 20:57:26
その検索エンジンのサイトにやり方出てるだろ
398:nobodyさん
08/07/05 21:17:40
>>387に対する>>389の返答が分かりません。教えてください。
399:nobodyさん
08/07/05 21:18:45
いい加減荒らすのはやめてくれ
400:nobodyさん
08/07/05 21:26:54
>>396
なんだかPHPじゃなくてHTMLのformとinputの使い方の質問ぽい気がするんだが。
まあ俺には難しくてわかんないや。
>>398
わからないがあまり教えてほしいとは思わなかった。
401:396
08/07/05 21:42:04
>>400
それです。
HTMLとphpの組み合わせは対象外でしょうか?
402:nobodyさん
08/07/05 21:44:22
>なんだかPHPじゃなくてHTMLのformとinputの使い方の質問ぽい気がするんだが。
>それです。
>HTMLとphpの組み合わせは対象外でしょうか?
え??
ごめん、あなたの質問は難しくて俺にも理解できないや
403:nobodyさん
08/07/05 21:45:19
>>401
ここをよく読んでごらん
URLリンク(www.google.co.jp)
404:nobodyさん
08/07/05 21:45:21
検索エンジンのページに検索窓のHTMLタグがあるだろ
それコピペしてHTMLに貼っとけや
405:nobodyさん
08/07/05 21:45:38
>>400
自分のサイトのフォームから外部検索エンジンで検索したいってことだから、
phpの範囲に含めても問題ないと思う。
ただ、検索サイトを見に行けばいいだけなのに
わざわざここで質問する意味もわからんが。
まぁ、>>394が答えを出してるから終了した質問だな。
406:nobodyさん
08/07/05 21:52:36 7nNiVjXj
色々とアドバイスありがとうございます。その殆どは辛辣なものばかりでしたが。
一つ一つコードを時間計測しましたが、
時間がかかっているところは、参照用のSQLを発行してデータを戻す関数が原因だとわかりました。
$rs = mysql_query($sql, $dblink);
このmysql_queryの実行だけに10秒かかっています。
ただ、これでは並行処理ができません。
mysql_queryを速くする方法はありますか?
407:nobodyさん
08/07/05 22:00:25
>>406
その質問では「あるよ」としか答えることはできない
煽り抜きの話
408:nobodyさん
08/07/05 22:08:14
最初っから答えはみんなわかっている。
その$sqlの文字列の中身が悪いんだろw
409:nobodyさん
08/07/05 22:09:26
SQLが悪いとしたら、完全にPHPのスレでやることじゃないなw
SQLのスレに逝ってください。ここにはもうレスしなくていいです。
誰も答えませんから。
410:nobodyさん
08/07/05 22:18:23
>>406
Webシステムの経験が足りないんだから焦っても上手くいかないよ
基礎からちゃんと学んだほうがいいよ
それから質問者なんだから立場をわきまえて嫌味とか言わないようにね。社会でやってけないよ。
411:nobodyさん
08/07/05 22:24:03
>>406
最初から意味無いって応え出て(馬鹿にして)たじゃん。
判りにくくて無視したのかもしれないが>>324が良回答だよ。
412:nobodyさん
08/07/05 22:25:31
解決法
・mysqlデータベースのチューニング
・mysqlサーバを別のマシンに移す
解決手順
・他社に依頼
413:nobodyさん
08/07/05 22:36:20
indexしてないという落ちだったら殴るぞ
414:nobodyさん
08/07/05 22:46:55 7nNiVjXj
私は、phpについてはそこそこ経験と実績がありますが、
MYSQLは今回初めてなので、よくわかりません。
通常は、DBチームがSQL文を作成したりDAOを作成するため、関与しないのですが、
今回は予算の関係で人が足りず、一人で作りました。
とりあえず、クライアントには、導入したMySQLの性能に問題があるということで理解を得たいと思います。
選定の際に、導入コストが安いMySQLを選んだクライアント側にも責任の一端はあるわけですから。
ここのスレは役に立つ情報も有ると思いますが、
雑音が多くて、せっかくの情報が埋もれてしまうのが残念です。
何かと問題が多い2chですから、それを承知で投稿させて頂きましたが、
使い方次第ですね。
とりあえず、感謝の気持ちは表しておきます。
ありがとうございました。
415:nobodyさん
08/07/05 22:48:06
>>414
違う。MySQLの問題ではなく、
遅いSQL分を書いたお前がヘタレ。
416:nobodyさん
08/07/05 22:53:13
MySQLやクライアントのせいにするのムカつく
417:nobodyさん
08/07/05 22:53:55
>>414
おまえなぁ。最初に自分に問題があると考えられるようにならないとだめだぞ。
418:nobodyさん
08/07/05 22:55:35
感謝の気持ちがとりあえずww
同僚でこんなのいたら最悪だなwww
419:nobodyさん
08/07/05 22:56:48
クライアントが(´・ω・) カワイソス
420:nobodyさん
08/07/05 23:21:24
なにこのキモイ流れ
421:nobodyさん
08/07/05 23:22:50
うむ、ID:7nNiVjXjは反省すべき
422:nobodyさん
08/07/05 23:27:55
あと30分後に「釣れた、大漁www」という書き込みがある悪寒
423:nobodyさん
08/07/05 23:28:37 f4JIQhYU
INSERT INTO tabele_name(カラム名,カラム名) VALUES(値,値)
上記のとき、カラム名を [`]で囲む必要はあるのでしょうか?
[`]をつけないとエラーになるときがあり、その理由がわかりません。
424:nobodyさん
08/07/05 23:35:25
>>423
つ「予約語」
つ「スレ違い」
425:nobodyさん
08/07/05 23:35:49 T4jgJP6e
フォーム処理でのファイルアップロードについて質問です。
フォームの流れを、「入力→確認→完了」としているのですが、
画像を確認する為に、一度ファイルをアップロードして
確認画面で問題なければ正規のディレクトリに移動させています。
おそらく大多数の方がこのような確認方法をとっているのかと思いますが、
一度ファイルをアップロードして、再度ファイルをアップロードし直す時、
古いファイルが残ってしまいます。
これも一定時間置きに、確認ディレクトリ内を削除すると思うのですが、
どうも非効率だと思います。
そこで質問ですが、上記の方法以外にアップロードしたい画像を
確認する方法はないでしょうか?
426:nobodyさん
08/07/05 23:56:01
>>406
回答に必要な情報が足りない。
$sql
$dblink
それぞれの内容及びdbのtable構成、レコード数
それ位は最低限必要。
427:nobodyさん
08/07/05 23:59:10
>>422
IDが変わる日を跨いだ瞬間偽物が釣れたとレスする悪寒も。
428:nobodyさん
08/07/06 00:03:46
>>414
DB板のMySQLのスレでDB構造とどんな感じのSQL発行してるか書いてみ
あとループ内で数1000件のSQL発行してるとかは無いよね?
DBチームが居てあまりSQLに精通してないなら
悲惨なSQLやDB構造になってる可能性が高い
429:nobodyさん
08/07/06 00:07:02
じゃあお言葉に甘えてつれたwwww
430:nobodyさん
08/07/06 00:08:22
>>425
同一人物がアップしてできるテンポラリのファイル名を
固定しちゃえば?
まぁどっちにしろゴミファイルを削除しないとだけど
431:nobodyさん
08/07/06 00:17:16
>>425
セッションと組み合わせて、セッションがGCされるタイミングで
同じくコレクションするしかないんじゃないかな。
432:nobodyさん
08/07/06 00:27:04
効率的といえばクーロンで一気に削除する方が効率的だと思うけど
俺だと、tmpファイルか否かと、tmpファイルのライフタイムが分かるのを前提にして、
次回処理時にtmpディレクトリを走査していらないファイルは消すだな
433:nobodyさん
08/07/06 01:32:55
ディレクトリあらってタイムスタンプが数時間以上昔のファイル
を消すってやり方してるじょ。ちんぽちんぽ
434:nobodyさん
08/07/06 04:11:06
>>406
10秒は異常。よくある話だけどね。
どんな遅くたって1秒以内に返るようにすることはできるが
キミがそのスキルが無いんじゃ無理かも。
普通に金取るならそんな問題瞬時に解決できるよ。
435:nobodyさん
08/07/06 05:18:10 Uta9DmJU
$a = split(",", "abc,defg,hi");
これは、「,」があるところで分割していますが、2種の分割条件を設定したい場合は
どのようにしたらいいんでしょうか?
たとえば「きょう、はれ。あしたは、くもり。」とあった場合に、「、」「。」と両方で区切りそれぞれ
変数に格納したいのですが。。よろしくお願いいたします。
436:nobodyさん
08/07/06 05:37:40
置換してから分割するというのは?
437:nobodyさん
08/07/06 07:04:08
>>87
今更だがExcel_Reviser再公開されたぞ。
438:nobodyさん
08/07/06 09:01:51
「、」「。」と両方で区切りそれぞれ 変数に格納ってどういう風に?
Array([0]=>きょう,[2]=>はれ,[3]=>あしたは,[4]=>くもり)
Array(
[0]=>Array([0]=>きょう,[1]=>はれ),
[1]=>Array([0]=>あしたは,[1]=>くもり)
)