【PHP】下らねぇ質問はID出して書き込みやがれ 77
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/12/08(月) 01:27:39ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 76
http://pc11.2ch.net/test/read.cgi/php/1226517332/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0102nobodyさん
2008/12/09(火) 17:37:28ID:???0104nobodyさん
2008/12/09(火) 18:46:37ID:O9eg0LyY【PHPのバージョン】PHP5.1.6
pecl installでAPC導入したのですがphpinfo()に反映されませんでした。
apache再起動時のエラーログを確認した所
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/apc.so' - /usr/local/lib/php/extensions/apc.so: undefined symbol: zend_compile_file in Unknown on line 0
と出ています。
導入したAPCのバージョンは3.0.19です。
解決策ありましたらご教授よろしくお願いします。
0105nobodyさん
2008/12/09(火) 19:21:43ID:AVrbWSbl少数の比較をしてはならない、
って、解説サイトに書いてあったんだが、そうなの?
0106nobodyさん
2008/12/09(火) 19:22:15ID:???小数○
0107nobodyさん
2008/12/09(火) 19:30:42ID:???0108nobodyさん
2008/12/09(火) 19:36:14ID:???( ゚ω゚ ) /
ハ_ハ ⊂ ノ ハ_ハ
('(゚ω゚`∩ (つ ノ ∩´゚ω゚)')
ハ_ハ ヽ 〈 (ノ 〉 / ハ_ハ
('(゚ω゚`∩ ヽヽ_) (_ノ ノ ∩´゚ω゚)')
O,_ 〈 〉 ,_O
`ヽ_) (_/ ´
ハ_ハ お 断 り し ま す ハ_ハ
⊂(゚ω゚⊂⌒`⊃ ⊂´⌒⊃゚ω゚)⊃
0109nobodyさん
2008/12/09(火) 23:37:38ID:???0110nobodyさん
2008/12/10(水) 12:01:59ID:6u+ZdXWjMySQLのデータを、PHPを用いて表示は出来ましたが、エクセルへ出力となると何から手をつけていいのやら…
オススメの参考資料などありませんか?
ググってもCVS出力というものばかりヒットします
0111nobodyさん
2008/12/10(水) 12:12:05ID:???0112nobodyさん
2008/12/10(水) 12:49:12ID:???0113nobodyさん
2008/12/10(水) 12:52:42ID:???0114nobodyさん
2008/12/10(水) 12:54:11ID:???強制的にセッションを切断したいんだけど
なんか良い方法ある?
0115nobodyさん
2008/12/10(水) 12:55:48ID:???0116nobodyさん
2008/12/10(水) 13:14:41ID:???0119nobodyさん
2008/12/10(水) 16:36:22ID:AE/sV1zeフォルダのなかに、ファイル(データ書込み)をつくり、
そのフォルダを圧縮します。
また、複数人がアクセスすることを考えると、
ファイルには乱数で名前をつける必要があるのでしょうか?
素人ですみませんが
0120nobodyさん
2008/12/10(水) 16:40:54ID:???0121nobodyさん
2008/12/10(水) 17:13:46ID:AE/sV1zeWEB上から申し込んだ人に対して、
個別にファイルをTENPでつくり、
それを入れたフォルダを圧縮したいです。
0123nobodyさん
2008/12/10(水) 17:23:45ID:???0124nobodyさん
2008/12/10(水) 17:48:30ID:IV3o+bU1$partO=$_POST['partO'];
0125nobodyさん
2008/12/10(水) 17:49:16ID:IV3o+bU1$_POST['part78']までです
0127nobodyさん
2008/12/10(水) 18:08:59ID:???配列にセットしたら?
$part = array();
for ($i = 1; $i <= 79; $i++) {
if (isset($_POST["part{$i}"])) {
$part[$i] = $_POST["part{$i}"];
}
}
0128127
2008/12/10(水) 18:12:06ID:???$i <= 78か$i < 79ね
0129nobodyさん
2008/12/10(水) 18:14:47ID:IV3o+bU1ありがとうございます。
$_POST[]の部分に変数が入れられないと思ってましたが、ググってみたら"{}"で入れられるんですね。
0132nobodyさん
2008/12/10(水) 18:19:47ID:IV3o+bU1orz
自分 '' をつけてました。
0133nobodyさん
2008/12/10(水) 18:20:44ID:???$_POST['part' . $i]とかでもいいよ
柔軟に書けます
0134nobodyさん
2008/12/10(水) 19:22:10ID:AE/sV1ze素人なものですみません。
ファイルの圧縮は、例文どおりに書いたらできましたが、
フォルダの圧縮がまったくわかりません。
どの関数を使うのでしょうか?
また、複数人が同時アクセスすると、
フォルダの中には複数のtempファイルが入ってしまうのでしょうか?
個別にしたいわけですが。
0135nobodyさん
2008/12/10(水) 19:31:33ID:???0136nobodyさん
2008/12/10(水) 20:01:42ID:UV6BBIxz<?php
for ($a=0; $a<3; $a++){
print ($a."<br />");
}
?>
↑これで、1行ずつ表示したいんだが、無理?
0138nobodyさん
2008/12/10(水) 20:10:34ID:???フォルダーの圧縮やってみました?
mkdirしてそこに必要なファイルをつっこんでそのフォルダを圧縮 チーン
0139nobodyさん
2008/12/10(水) 20:11:37ID:UV6BBIxzいや、だから、何を試すんだよ?
バカなのかお前
0140nobodyさん
2008/12/10(水) 20:12:12ID:UV6BBIxz1行ずつ、って
ゆっくり表示する、って意味だよ?
0142nobodyさん
2008/12/10(水) 20:18:28ID:???ゆっくり表示するって書いてくれなきゃわからないです。ごめんなさい。
田代砲でサーバ攻撃しながら表示すればOK
0143nobodyさん
2008/12/10(水) 20:19:25ID:???flushとsleep使ったらどうかね
0144nobodyさん
2008/12/10(水) 21:11:51ID:???しっかり守ってるかセキュリティのチェックがしたいのですが
田代砲って配布サイトで拾ってきたもの使っても大丈夫ですか?
0145144
2008/12/10(水) 21:12:46ID:yyzcwK8M0146nobodyさん
2008/12/10(水) 21:24:10ID:???0147nobodyさん
2008/12/10(水) 21:31:58ID:???セキュリティのチェックとか関係ない
0148nobodyさん
2008/12/10(水) 21:42:22ID:???この問題を表示するプログラムって
ちょちょいと作れる?
0149nobodyさん
2008/12/10(水) 21:43:19ID:???0151nobodyさん
2008/12/10(水) 21:49:21ID:AE/sV1ze1)ファイルを動的につくる
2)そのファイルを含む複数のファイルをまとめて圧縮する
この2つをやる例文はないでしょうか?
素人なものですみません
0152nobodyさん
2008/12/10(水) 22:04:50ID:???とりあえず、
フォームで、「nの値を入力させる」
そんで、nが確定するから、
そのときの、出る目のパターンを、
全表示する、って、PHPでできる?
0153nobodyさん
2008/12/10(水) 22:15:04ID:???http://pear.php.net/package/Archive_Zip/
0154nobodyさん
2008/12/10(水) 22:33:18ID:???http://jp.php.net/manual/ja/function.ziparchive-open.php
0155nobodyさん
2008/12/10(水) 22:56:27ID:???このサイトわかりやすい
0156nobodyさん
2008/12/10(水) 23:00:34ID:???0157nobodyさん
2008/12/10(水) 23:02:09ID:???このページに、
「セッションというものは、クッキーを利用している」
って書いてあるけど、別にクッキーを使わない
セッションというものも、あるんですよね?
0159nobodyさん
2008/12/10(水) 23:33:40ID:???0160nobodyさん
2008/12/10(水) 23:36:40ID:AE/sV1ze素人ですみません。
zlib というので、やりたいのですが、
フォルダにするやり方がどうしてもわからないので断念
zip関数というので、できそうな気がしましたが、
サーバーを調べるとPHP4だったので、たぶん使えないだとうと断念
Pear でやれるか検討中。
という感じなんですが、できるでしょうか?
0161nobodyさん
2008/12/10(水) 23:45:17ID:???0162nobodyさん
2008/12/10(水) 23:46:50ID:???0163nobodyさん
2008/12/11(木) 00:15:49ID:2wImFGsHセッションは、
(1)セッション+クッキーで管理する
(2)セッション+URLにセッションIDを埋め込む
この2つしかやり方はない、であってる?
0164nobodyさん
2008/12/11(木) 00:25:16ID:???URL埋め込み以外にもフォームのhiddenの場合もあるし
0165nobodyさん
2008/12/11(木) 00:40:13ID:2wImFGsH(2)URL埋め込み
(3)hidden
おおまかに言って、この3種類?
0166nobodyさん
2008/12/11(木) 01:13:02ID:vCW1WzQVhttp://jp.php.net/manual/ja/zip.examples.php
ここに書いてある最初の例を、ローカルで試すと、
書き込んだファイルの拡張子の後に、
乱数(時間?)の数字がつきます。
それも、ちょっとまずく、
個別のアクセスした人に、個別のファイルをダウンロードさせたい
わけです。
数字なしにすれば、いいでしょうか。
その場合、同時アクセスのリスクはあるでしょうか?
素人ですみません
0169nobodyさん
2008/12/11(木) 02:16:43ID:vCW1WzQVtime()を外すと、大丈夫でした。
あと、アクセスした人個別にファイルをつくり、
その個別ファイルをダウンさせたいわけです。
なので、同時にアクセスされると不具合が起きるような気がして
ずっと心配しています。
そういう場合はプロの方はどうするのでしょうか?
同時に1人しかアクセスしないように制限するとか・・・
0170nobodyさん
2008/12/11(木) 02:19:15ID:???0171nobodyさん
2008/12/11(木) 02:37:05ID:???付与したいんでないか?
0172nobodyさん
2008/12/11(木) 04:15:55ID:2wImFGsH本や解説サイトによって、
関数の引数の
値渡しと、参照渡しで、
どっちが多く使われるか、
意見が分かれているのだが、
どっちがポピュラーなのか?
0173nobodyさん
2008/12/11(木) 04:21:57ID:???理論的なことばっか質問するな
答えがほしいなら学校へ行け
技術的に詰まったら質問に来い
0174nobodyさん
2008/12/11(木) 04:23:18ID:???,r´⌒ヽ,⌒ヽ,ヽ
(⌒)、 .人 λ\、 ._____
\. \ 、 ヽ./ ー ー\
|\ \ ヽ./ ( ●) ( ●)
| \ \ / (__人__) \ はいはい、どーもすみませんでした
|. \ | ` ⌒´ |
. |. |.\_ノ\ /
. |. | | \______/
. | ) .| . . ̄ ̄
. | | .|
| |.| .|
. | | .| .|
/ / / ヽ,
(__ノ ヽ、__つ
0175nobodyさん
2008/12/11(木) 08:01:27ID:???0176nobodyさん
2008/12/11(木) 08:09:54ID:???0178nobodyさん
2008/12/11(木) 21:02:23ID:yxR9XmFMデータの構造は、このようになっていますが、
どのようなデータ処理が一番適切でしょうか?
adfadfasdfasf1 384 Thu Dec 11 10:41 data1
(himitu1)
subdata1
adfadfasdfasf2 356 Thu Dec 11 05:20 data2
(himitu2)
subdata2
adfadfasdfasf3 361 Wed Dec 10 20:32 data3
(himitu3)
subdata3
・
・
・
このような構造のデータが可変で続きます。
上記の例でいえば、data1、subdata1、data2、subdata2、・・・の順で取得してDBに突っ込みたいと思っております。
一つのデータが一行で収まっていれば、explodeと簡単なのですが、
一つのデータが複数行になってしまっているので、処理が複雑になってしまいます。
何かよい知恵をお貸し下さい。お願いします。
0179nobodyさん
2008/12/11(木) 21:05:45ID:???0180nobodyさん
2008/12/11(木) 21:43:42ID:???悩むとするならこの行だろうけど、
項目が減ったり増えたりする訳じゃないのだから
頑張って正規表現だな。
まず、日付を先に取り出すのを考えて、日付取り出しちゃえば
後はすげー楽だと思う。
7種類の曜日のどれか、スペース、12種類の月のどれか、スペース
数字2桁、スペース…
正規表現に当てはめるのは簡単だけど、書くのは凄いめんどくさそうだね。
0181nobodyさん
2008/12/11(木) 22:37:36ID:yxR9XmFMアドバイスありがとうございました。
行での正規表現でのアドバイス参考になりました。
ただ、3行ずつ分けるって、結構大変そうですね。
やはりフラグを多用し、プログラムがぐちゃぐちゃになりそうなので、
そこはちょっと困ったところです。もう少し考えてみます。
どうもありがとうござました。
0182nobodyさん
2008/12/12(金) 01:34:45ID:???$i = 0;
$j = 0;
foreach ($text as $line) {
$block[$i][$j] = $line;
$j++;
if ($j == 2) {
$j = 0;
$i++;
}
}
的なことすればいいんでないの?
0183nobodyさん
2008/12/12(金) 02:00:06ID:8m0qh2cG一時間当たりのどれくらい処理できるかを考えるとき、
3600÷0.07=51,429PV処理できると考えて、ほぼ間違いないでしょうか?
どれだけの処理能力があるかが分かると、どれくらいの負荷の時に、
サーバーを増やす必要があるかどうか分かるので、参考になります。
アドバイス下さい。
0184nobodyさん
2008/12/12(金) 02:03:32ID:???0186nobodyさん
2008/12/12(金) 02:11:48ID:8m0qh2cG色々情報を書きすぎてすみません。
知りたいことは、一時間あたり「待ち時間なく」どれくらい処理できるか、ということでした。
そう考えたときに、51,429PVまでなら、待ち時間なく0.07秒で処理できるという認識で正しかったでしょうか?
0187nobodyさん
2008/12/12(金) 02:27:34ID:???0188nobodyさん
2008/12/12(金) 02:29:55ID:???PVとかあんまり参考にするものじゃない
0189nobodyさん
2008/12/12(金) 02:31:04ID:8m0qh2cGはい。0.07秒は、リクエストを最初に受け取った直後から、
リクエストを返却してスクリプトを終了する直前までの時間です。
5万回リクエストテストをして得た数値です。
DB処理も絡むシステムなので、待ち時間が発生すると、DBのデータ不整合が発生する場合があるので、
できる限り待ち時間を発生させないのが課題です。
0190nobodyさん
2008/12/12(金) 02:34:19ID:???0191nobodyさん
2008/12/12(金) 02:34:21ID:???いやいやいや・・・
トランザクション処理も知らないのか?
0192nobodyさん
2008/12/12(金) 02:41:15ID:???データーの不整合が発生しないように
組むのが普通だよね?
0193nobodyさん
2008/12/12(金) 02:45:54ID:8m0qh2cGトランザクションは、結構多いです。ですから、それで困っています。
そうなると、たまたま同じデータに更新処理しようとしたときに、微妙なタイミングでデータが破損することが分かっています。
これが原因だということを突き止めるのに結構時間も掛かりました。
以上の経緯から、システムを安全に運用するために、待ち時間を発生させる前にサーバー増設のタイミングを計ろうと考えているところです。
そのためのデータとして、一時間当たりの処理能力を測ることはできないでしょうか?
0194nobodyさん
2008/12/12(金) 02:47:29ID:???0195nobodyさん
2008/12/12(金) 03:00:16ID:???0197nobodyさん
2008/12/12(金) 03:12:52ID:???排他処理をすればいいでしょ。
処理能力を上げて待ち時間を無くして、DBを守るなんて無理。
昔、いい加減なCGIで作られた、超過疎のBBSでもログを飛ば
すことがしょっちゅうあった。
っていうか、何釣り?
0198nobodyさん
2008/12/12(金) 03:19:22ID:???努力する方向を間違ってる人っているよな。
0199nobodyさん
2008/12/12(金) 03:28:03ID:???0200nobodyさん
2008/12/12(金) 03:31:05ID:???0201nobodyさん
2008/12/12(金) 03:42:21ID:8m0qh2cG確かに、>>200さんが仰られているとおり完全に同時にアクセスされたら終わりです。
ただ、それは仕様として諦めるとしても、できるだけそのような状況を回避することはできないでしょうか?
たとえば、現実の話に喩えますと、店のレジが一個しかなくてレジ係の人が1時間で100人しか人をさばけないとします。
その時、一時間平均100人を超える人が並ぶことが予め想定されるならば、レジを増やすなりの必要があるのではと考えています。
単純に、一時間200人の客がくれば、一時間で100人の待ちが発生し、10時間後には1000人の待ちが発生します。
もし、この店が24時間営業ならば、この待ちは永遠に解消されません。
サーバーの話に戻しますと、永遠に解消されない待ちは、いずれシステムダウンに繋がるのではと思っています。
どのような動作になるのかは、知識不足で分かりませんが、そのような状況を回避するために一時間当たりの処理能力を測る手立てというものはありませんでしょうか?
長文ですみません。
■ このスレッドは過去ログ倉庫に格納されています