[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 01/15 08:32 / Filesize : 203 KB / Number-of Response : 829
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:nobodyさん mailto:sage [2012/01/02(月) 02:03:25.50 ID:???]
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ

200 名前:nobodyさん [2012/01/05(木) 01:25:30.10 ID:YvCiXMC9]
>>199
サイトへアクセスする全員が利用するデータがDBにあります。

201 名前:nobodyさん mailto:sage [2012/01/05(木) 01:27:30.94 ID:???]
>>194
自分で書いてるようにmemcachedを使うのではだめなの

202 名前:nobodyさん mailto:sage [2012/01/05(木) 01:28:43.46 ID:???]
>>200
ん?DBにあるものでいいのなら別段困ることはないような。すでに外部依存でしょ

203 名前:nobodyさん [2012/01/05(木) 01:29:24.23 ID:YvCiXMC9]
>>199
たとえば一定期間に1000人がアクセスしたとします。
最低1000回DBへのアクセスが発生します。
データは共通なのだから本来であればDBへのアクセスは1回で
よいはずです。

204 名前:nobodyさん [2012/01/05(木) 01:32:17.91 ID:YvCiXMC9]
>>202
基本的にPHPは重いしサーバーのメモリを食うのでできる限り
使用したくないのです。
そこで、jsonなどの静的ファイルに置き換えてjsで読むという方法は
取っていますが、結局サーバーサイドとクライアントサイドで書く必要
があるのでめんどくさいのです。

205 名前:nobodyさん mailto:sage [2012/01/05(木) 01:32:25.82 ID:???]
>>200
それは絶対にDBになくちゃいけないのか?
静的ファイルで出来るなら設計から見直した方がいいだろう。

206 名前:nobodyさん mailto:sage [2012/01/05(木) 01:34:30.08 ID:???]
>>203,204
Webサービス化+キャッシュ(orプロキシ)を使うではダメ?

207 名前:nobodyさん mailto:sage [2012/01/05(木) 01:35:26.23 ID:???]
補足 サービスはJSONまたは部分的なHTMLを返却するものをつくって。

208 名前:nobodyさん [2012/01/05(木) 01:42:34.82 ID:YvCiXMC9]
>>205
使う側の利便性を考えるとやはりDBです。

やっぱり方法は無いんでしょうね。
memcachedと使うという手法は知っていますが、
PHPの仕組み上ではどうしてもサーバーに負荷がかかってしまう。

アプリケーションスコープがある言語にどうにかして切り替えます。
ありがとうございました。



209 名前:nobodyさん mailto:sage [2012/01/05(木) 02:35:16.36 ID:???]
新年早々大丈夫か(精神的に)

210 名前:nobodyさん mailto:sage [2012/01/05(木) 02:43:39.22 ID:???]
>>209
くやしいのうwww、くやしいのうwww

211 名前:nobodyさん mailto:sage [2012/01/05(木) 03:05:43.15 ID:???]
>>203>>204>>208
悪いけど究極的にウンコみたいな設計だな。
根本的におかしい。
どうやったらそんな謎設計になってしまうのか詳しく聞きたい。

212 名前:nobodyさん mailto:sage [2012/01/05(木) 03:16:02.50 ID:???]
>>211
代替案をどうぞ

213 名前:nobodyさん mailto:sage [2012/01/05(木) 03:17:13.41 ID:???]
>>211
代替案を出せなかったら>>211がウンコだなwwww

214 名前:nobodyさん mailto:sage [2012/01/05(木) 03:19:25.31 ID:???]
>>211
さあ、どうでるか。ヒヒヒwwww。

215 名前:nobodyさん mailto:sage [2012/01/05(木) 03:23:45.71 ID:???]
なるほど、つれなかったときはこうなるのか…

216 名前:nobodyさん mailto:sage [2012/01/05(木) 03:24:40.47 ID:???]
>>211
「おかしなコードを書くことを助長する言語」
by まつもとゆきひろ

ヒヒヒwwww。



217 名前:nobodyさん mailto:sage [2012/01/05(木) 03:25:36.35 ID:???]
>>211
なんでおかしなコードになるんでしょうか?
ヒヒヒwwww。

218 名前:nobodyさん mailto:sage [2012/01/05(木) 03:25:37.26 ID:???]
>>212>>213>>214
そうあわてんなって。
こんなウンコみたいな設計で動いてるサイトの詳細ってお前らも知りたくないか?
本人が来たら詳しく聞いてみようぜ。



219 名前:nobodyさん mailto:sage [2012/01/05(木) 03:26:40.76 ID:???]
>>218
もういいから早く代替案を答えて。
ヒヒヒwwww。

220 名前:nobodyさん mailto:sage [2012/01/05(木) 03:27:43.85 ID:???]
>>218
ねぇ、質問していい?
なんどfacebookって今C++になったの?
ヒヒヒwwww。

221 名前:nobodyさん mailto:sage [2012/01/05(木) 03:28:57.55 ID:???]
>>215
そういいながら、釣られたお前。
ヒヒヒwwww。

222 名前:nobodyさん mailto:sage [2012/01/05(木) 03:30:09.30 ID:???]
>>211
代替案まだ?
ヒヒヒwwww。

223 名前:nobodyさん mailto:sage [2012/01/05(木) 03:33:34.93 ID:???]
こりゃ、だめだ。
レベル低すぎ。

224 名前:nobodyさん mailto:sage [2012/01/05(木) 03:38:42.21 ID:???]
>211
「PHPはおかしなコードを助長する言語」
同意だよね。ヒヒヒwwww。

225 名前:nobodyさん mailto:sage [2012/01/05(木) 03:39:35.00 ID:???]
>>220
facebookってCじゃなくてC++採用したんだ?

226 名前:nobodyさん mailto:sage [2012/01/05(木) 03:41:49.18 ID:???]
>>225
HipHop for PHP

言語の選択に間違えたfacebookの苦肉の策。

227 名前:nobodyさん mailto:sage [2012/01/05(木) 03:43:26.68 ID:???]
>>211
ねぇ、まだ?

228 名前:nobodyさん mailto:sage [2012/01/05(木) 03:46:05.91 ID:???]
>>226
あらあらなるほど
ちゃっちゃと作る分にはPHPは楽だからな。
人が集まった時点で作り直せばよかったんだろうけどなぁ。



229 名前:nobodyさん mailto:sage [2012/01/05(木) 03:47:09.77 ID:???]
って、それ自体がfacebookの成果物だったんだな。
無知ですまんかった。

230 名前:nobodyさん mailto:sage [2012/01/05(木) 03:50:18.84 ID:???]
>>226
そんなわけがわからないものを作るよりは
初めからC++で作っとけば良かったんだ。
HipHopにしてもネイティブのC++に比べると
オーバヘッドがあるわけでムダだよね。

231 名前:nobodyさん mailto:sage [2012/01/05(木) 03:56:56.20 ID:???]
>>230
まったくだな

まあこっちのほうが遙かにわけわからないけどねw
>>203
>>204
>>208

232 名前:nobodyさん mailto:sage [2012/01/05(木) 03:58:28.05 ID:???]
>>230
C++で作ったからといって、1000ユニークアクセスに対して1000DBアクセスが発生しなくなるわけじゃあないからな。
なんの工夫もなしにそれは変わることはない

233 名前:nobodyさん mailto:sage [2012/01/05(木) 04:44:02.06 ID:???]
すげー自演だなw

234 名前:nobodyさん mailto:sage [2012/01/05(木) 04:50:42.28 ID:???]
自演としても成立してないよ
HipHopはPHPの開発ツールとしての優位性が強まる、つまり「PHP最強だろ!」って話だからね
PHP憎しで完全に狂ってるけど、はたから見ると面白い

235 名前:nobodyさん mailto:sage [2012/01/05(木) 08:46:23.61 ID:???]
>211
もういいから早く代替案を答えて。

236 名前:nobodyさん mailto:sage [2012/01/05(木) 08:57:14.69 ID:???]
>>234
C++で作ったからといって、1000ユニークアクセスに対して1000DBアクセスが発生しなくなるわけじゃあないのに、
なぜHipHopで「PHP最強だろ!」になるのですか?

237 名前:nobodyさん mailto:sage [2012/01/05(木) 09:06:53.72 ID:???]
>>232
PHPってそんなこともできないの?

238 名前:nobodyさん mailto:sage [2012/01/05(木) 09:14:31.17 ID:???]
一人で一生懸命ごくろうさん
よく死にたくならないなと感心するよ



239 名前:nobodyさん mailto:sage [2012/01/05(木) 09:22:13.73 ID:???]
>>238
もういいから早く代替案を答えて。

240 名前:nobodyさん [2012/01/05(木) 11:42:14.54 ID:ACIe1UJA]
標準関数を自分で定義したものに置き換える方法ありませんか。

241 名前:nobodyさん mailto:sage [2012/01/05(木) 11:48:53.94 ID:???]
PHPのソース書き換えてビルドかな
じゃなければmyTrim()とかmyPhpinfo()みたいにプレフィックスでも付けて差別化するしかない

242 名前:nobodyさん [2012/01/05(木) 11:55:13.54 ID:ACIe1UJA]
ソース書き換えなしで不具合の出る関数の動作を修正したかったのですが。
PHPコードからではできないですか。
諦めて別名でやってみます。

243 名前:nobodyさん mailto:sage [2012/01/05(木) 12:05:52.58 ID:???]
>>230
それはC/C++ソースをコンパイル時にアセンブラ出力して書き換えるようなもの。
無駄をなくすとすれば機械語、アセンブラにたどり着く。
しかし開発効率からそのあたりには手を出さず、PHPやC/C++のコードの範囲でできる事をした方が良い。

244 名前:nobodyさん mailto:sage [2012/01/05(木) 12:15:28.46 ID:???]
いま荒らしてる人ってMatzを「まともと」「まともと」って言ってた人か
Matzも知らないから素人なんだろうと思ってたけど納得だわ>>218
facebook級のサイトのを運営してるSEというなりきり設定がワロタ

PHPの高速化に HipHop vs APC てのがあるみたいだけど
現時点でほとんど性能は変わらないようだし安定性の面でAPCに軍配が上がるのかな。
サクッと作って高速で動かすという技術はPHPが先を行ってる感じ
blog.candycane.jp/archives/491
dsas.blog.klab.org/archives/51978647.html

245 名前:nobodyさん mailto:sage [2012/01/05(木) 12:28:51.85 ID:???]
HIPHOPの実行ファイルはPHP上で動くんじゃないだろ。
どれだけPHPが高速化できたとしても、リソースの少なさ、速度の速さではネイティブ実行形式が上だろ。

246 名前:nobodyさん [2012/01/05(木) 12:43:16.59 ID:WqkweKyi]
結局のところ、アプリケーションスコープの代替ってみなさんどうされています?

247 名前:nobodyさん mailto:sage [2012/01/05(木) 12:50:18.95 ID:???]
ニートが目覚めたな

248 名前:nobodyさん mailto:sage [2012/01/05(木) 12:52:26.30 ID:???]
いい歳して可哀想なもんやで



249 名前:nobodyさん mailto:sage [2012/01/05(木) 12:57:19.29 ID:???]
Javaで挫折したニートのオッサンだろう
シングルトン・マルチスレッド・アプリケーションスコープ、全部理解してないからな

250 名前:nobodyさん mailto:sage [2012/01/05(木) 13:02:42.94 ID:???]
まぁプログラマーはここにいるおっさんのように池沼になるリスクをはらんでるよな
精神病むには最適な職種と言える

251 名前:nobodyさん [2012/01/05(木) 14:48:43.61 ID:r8xFdMd/]
配列のキー指定で
$ary[expr1 ? expr2 : expr3]ってしたとき
expr3の結果を$ary[]にする方法ってないよね

ちなみにnullや''は空文字列で[]とは違う

252 名前:nobodyさん [2012/01/05(木) 14:56:30.73 ID:FPSYlk7p]
あるソースを読んでいる中で
class SQLというのがありまして

function getRecord($limit = NULL, $offset = 0) {

if ($limit) return array_slice($this->record, $offset, $limit);
else return $this->record;
}

というファンクションがあったんですが、
$this->record;のrecordが何を指しているかがわかりません。
recordてもともとPHPに用意されているファンクションなんでしょうか?

253 名前:nobodyさん mailto:sage [2012/01/05(木) 14:57:37.19 ID:???]
だれか翻訳頼む

254 名前:nobodyさん mailto:sage [2012/01/05(木) 14:58:56.94 ID:???]
class SQLのメンバ

255 名前:nobodyさん mailto:sage [2012/01/05(木) 15:09:18.10 ID:???]
$this->の時点で気付こうよ

256 名前:nobodyさん mailto:sage [2012/01/05(木) 15:09:19.83 ID:???]
一回PHPのクラスで何が出来るか勉強してくるべき

257 名前:nobodyさん mailto:sage [2012/01/05(木) 15:20:05.60 ID:???]
クラスを知らないか、理解していない人の相談なんです。

258 名前:nobodyさん [2012/01/05(木) 15:22:06.79 ID:FPSYlk7p]
すみません。クラスをちゃんと理解していませんでした
class SQLの中にrecordというファンクションがなかったので
もともと用意されている何かだとおもったのですが
ググってもでてこなかったので聞いてみました。

まだよくわかっていないのでちょっとクラスについて調べてきます



259 名前:nobodyさん [2012/01/05(木) 15:25:35.51 ID:yQXwn+vl]
DBを使ったサービス作るんだけど、
DB操作しやすいライブラリとかでおすすめないかな?

プログラム自体は大したことないのに、
テーブルやらカラムやらを大量に作らなきゃいけない予定なんで、
SQLで書くのめんどくさいから、
ソースコードだけで片付くものを探してるとこなんだけど

260 名前:nobodyさん mailto:sage [2012/01/05(木) 15:26:13.26 ID:???]
もっと頭を柔らかくしようよ
$this->recordが必ずしもファンクションとは限らないのにファンクションと決めつけてるだろ
そんなことだといつまでも謎のままだぞ

>if ($limit) return array_slice($this->record, $offset, $limit);
これ見たらあー配列なんだなってわかるし
つーことは、名前からしても$this->recordにはどこかでSELECTの結果かなにかを配列としてセットしてるメンバだとわかるだろう

261 名前:nobodyさん mailto:sage [2012/01/05(木) 15:26:51.23 ID:???]
>>258
recordというデータメンバもないですか。
親クラスがあればそちらにも

262 名前:252 [2012/01/05(木) 15:29:33.28 ID:FPSYlk7p]
class SQL {
private $count = 0;
private $host = "localhost";
private $error = null;

protected $link = null;
protected $record = null;

function connect() {
$this->link = mysql_connect($this->host, "???", "?????");
if (!$this->link) return false;
if (!mysql_select_db('recnomi', $this->link)) return false;
return true;
}

function disconnect() {
mysql_close($this->link);
}

function getRecord($limit = NULL, $offset = 0) {

if ($limit) return array_slice($this->record, $offset, $limit);
else return $this->record;
}

263 名前:nobodyさん mailto:sage [2012/01/05(木) 15:30:55.18 ID:???]
>>259
そーゆーことならフレームワークのスレへ
ただSQL書かないで最適なクエリを発行することはまず無理だと思う
DB抽象化ライブラリがインデックスまで把握して最適なクエリを発行してくれるものがあればオレも欲しい

264 名前:252 [2012/01/05(木) 15:31:28.29 ID:FPSYlk7p]
ソースは262なんですけど
5行目のprotected $record = null
で定義しているからしたで使えているということなんですか?;


265 名前:nobodyさん mailto:sage [2012/01/05(木) 15:31:53.77 ID:???]
>>262
>protected $record = null;

メンバとして定義されてるじゃん

266 名前:nobodyさん mailto:sage [2012/01/05(木) 15:33:04.94 ID:???]
>>264
まぁいい
とりあえずクラスってなぁに?どう使えてどう動くの?ってことを30日間勉強して

267 名前:252 [2012/01/05(木) 15:35:46.96 ID:FPSYlk7p]
そうですか。。。
$this->recordでrecordに$がついてなかったので
ファンクションだと思ってました。。
勉強してきます

268 名前:nobodyさん mailto:sage [2012/01/05(木) 15:36:05.47 ID:???]
>>263
了解
おもしろそうだから、一回自作できるか挑戦して、それでもダメだったらどこかのFW探してみます



269 名前:nobodyさん mailto:sage [2012/01/05(木) 15:38:38.34 ID:???]
>>268
使う機能だけを関数化すればよい。
SQLはコマンドラインでも動作する。難しければそこからやってみてそのあとPHPにするというのもある。

270 名前:nobodyさん mailto:sage [2012/01/05(木) 15:44:23.54 ID:???]
>>269
何言ってるのこのひと
すごく的外れ

271 名前:252 [2012/01/05(木) 15:45:28.44 ID:FPSYlk7p]
すみません。最後に一個ききたいんですが
5行目のprotected $record = nullでは配列が入っていないとおもうんですが
recordには配列はどうやって入れているのでしょうか?


272 名前:nobodyさん mailto:sage [2012/01/05(木) 15:50:04.64 ID:???]
$this->recordやrecordでソースを検索したら代入しているところが出てくる。

273 名前:262 [2012/01/05(木) 15:51:51.85 ID:FPSYlk7p]
ありがとうございます。もう一度調べてみます

274 名前:nobodyさん mailto:sage [2012/01/05(木) 16:09:56.66 ID:???]
$this->$recordと記述してしまうと、
$recordという変数を探して、
名無しの変数なんてねえよ。とわめいたり、
素知らぬ顔で空データ返してくれるPHPを見てると
ちょっと萌えるよね。
こんな技法滅多に使わないけど。

275 名前:nobodyさん mailto:sage [2012/01/05(木) 16:19:40.25 ID:???]
自分でフレームワークライクなもの書いたりする場合によく使うよ
/hoge/fugaというアクセスはclass hogeのfugaメソッドを実行とかね
どんな名前でアクセスしてくるかわからないものを一箇所で処理しようと思ったら便利でしょ

276 名前:nobodyさん mailto:sage [2012/01/05(木) 16:26:11.82 ID:???]
つか、>>262のクラスひどくね?w

>if ($limit) return array_slice($this->record, $offset, $limit);
クエリ発行時点でoffsetとlimitつけとけよ…
これごっそりレコード取って後から切り出してるだろ
とりあえずこんなクソコード捨てちまえ

277 名前:nobodyさん mailto:sage [2012/01/05(木) 19:28:56.82 ID:???]
>>267
ファンションを呼び出すなら$this->record()って書くだろうよ

278 名前:nobodyさん [2012/01/05(木) 19:29:38.66 ID:m/6w1Eth]
mysql_queryに、複数のクエリを;で区切って実行したところ、エラーになりました
そこでクエリごとに分けて別々に発行すればOKでした。
phpMyAdminでは;で区切ったクエリを実行できるのですが、
これはphpMyAdmin側で複数のクエリに分割して実行しているのでしょうか?
それともこちらのプログラムミスでしょうか?



279 名前:nobodyさん mailto:sage [2012/01/05(木) 19:31:31.15 ID:???]
プログラムミス

280 名前:nobodyさん mailto:sage [2012/01/05(木) 19:40:52.08 ID:???]
>>278
今どきただのmysql使うなんて時代後れすぎですね
mysqliを積極的に使いなさい
そして○○_query系でsqlを実行するのは今すぐやめましょう
これからは○○_prepareを使いましょう
queryでsql実行してたら業務でやってる人たちに笑われますよ

281 名前:nobodyさん mailto:sage [2012/01/05(木) 19:43:07.94 ID:???]
とりあえずマニュアル嫁
www.php.net/manual/ja/function.mysql-query.php

mysql_query() は、 ひとつのクエリを送信します (複数クエリの送信はサポートしません)。

282 名前:nobodyさん mailto:sage [2012/01/05(木) 19:45:35.06 ID:???]
>>279
適当にいうな
>>280
ありがとうございます
>>281
クエリのパースってmysql側でやるものだと思ってたのですが
そういうものなのですか
ありがとうございました

283 名前:nobodyさん mailto:sage [2012/01/05(木) 19:46:47.22 ID:???]
>>280の言うようにmysqliのほうが速いしなにかと捗るぞ
mysqliのmulti_queryはマルチクエリ実行できるよ

ただ得意気に
>そして○○_query系でsqlを実行するのは今すぐやめましょう
>これからは○○_prepareを使いましょう
とか言ってると笑われるから注意な

すべてケースによるから自分で最適なコーディングを探すこと
エスケープやアプリに合わせたサニタイズも考えながらやって

284 名前:nobodyさん mailto:sage [2012/01/05(木) 19:47:41.25 ID:???]
適当だったが、Sqlite3、PDOの関数では複数行の一括処理できるが。
Sqlite2の古い関数使うからダメなんだ。

285 名前:nobodyさん mailto:sage [2012/01/05(木) 19:50:55.00 ID:???]
>>284
何言ってるのこのひと
SQLite関係ないでしょ
PDOの話もしてないし

286 名前:nobodyさん mailto:sage [2012/01/05(木) 19:53:46.88 ID:???]
○○_prepareはわずかに速くなるだろうが大差ない。
ボトルネックでないだったら直に送信した方がソースは短くて済む。
決定的な差になるのはトランザクション指定。

287 名前:nobodyさん mailto:sage [2012/01/05(木) 19:54:50.31 ID:???]
ほんとだ。データベースは主にSqliteを使うからそれだけの様な気になってた。

288 名前:nobodyさん mailto:sage [2012/01/05(木) 19:55:28.06 ID:???]

バカだwwwwwwwwwwww
prepare使うのは速度のためじゃねえよwwwwwwwwwwwww



289 名前:nobodyさん mailto:sage [2012/01/05(木) 19:58:19.19 ID:???]
だからケースによるだろう
そもそもprepareは速く実行するためのものじゃねーし
エスケープを機械的にほぼ保証してくれるから使えるところでは極力使うべき

おまえ>>269,>>284だろ
ずっと明後日の方向見ながらレスしてるぞ
知ったかぶりにも程があるぞ

290 名前:nobodyさん [2012/01/05(木) 21:07:49.16 ID:m/6w1Eth]
mysqliについて調べ始めました
二種類のモードのうちMYSQLI_USE_RESULT
というのが、従来のmysqによる結果セットと同じなのかなと思うのですが

php.net/manual/ja/mysqli.use-result.php
クライアント側で 大量の処理を行う際は、mysqli_use_result() を 使用すべきではありません。
なぜなら、この関数はサーバとの接続を保持 し続け、取得しているデータに関連するテーブルについて、
他のスレッドから 更新ができなくなるからです。

と書いてありました。
これは接続が保持されている間はテーブルがロックされるということでしょうか?
結果セットはテーブルとは別の領域に作成されるのだから奇妙な処理に思えますが
どういうことなのでしょう
今までのmysql関数でも、接続が保持されている間はテーブルがロックされていたのでしょうか?


291 名前:nobodyさん mailto:sage [2012/01/05(木) 21:17:34.84 ID:???]
>>290
これ
>バッファに取得しないで結果オブジェクトを返します。 エラー時には FALSE を返します。

バッファに取得しないってことはなんらかの方法で現状をキープする必要があるでしょ
テーブルロックしてるかどうかしらんけど、してる可能性は高いよ

だからバッファリングしてから使うべき(このメソッドはあまり使うべきではない)ってことになるんじゃね

292 名前:nobodyさん mailto:sage [2012/01/05(木) 21:19:13.82 ID:???]
PHPのお馴染み特定厨さん降臨キタ−ーーーーーーー!

293 名前:nobodyさん mailto:sage [2012/01/05(木) 21:29:46.87 ID:???]
>>290
ちなみに
>二種類のモードのうちMYSQLI_USE_RESULT
>というのが、従来のmysqによる結果セットと同じなのかなと思うのですが
こういう変な固定概念的なものは取り払って素直にゼロから学習しなさいな
じゃないと自分の思うようにいかないことばかりでイライラすることになるよ
一応mysqliでSELECTを投げる場合の標準的な手順だけ
1. プリペアドステートメントセット
2. クエリ実行
3. 結果オブジェクト取得
4. オブジェクトから結果(レコード)取得
概ねこんな感じ

294 名前:nobodyさん mailto:sage [2012/01/05(木) 21:32:31.52 ID:???]
>>291
データ取得している間中ロックするとか
なんかありえない処理に思えるのですが・・・
同時に一人しか同一テーブルを読めないってことでしょう
いやありえない
mysqliがおかしいのか
今までも実はそうだったのか・・・

295 名前:nobodyさん mailto:sage [2012/01/05(木) 21:35:54.28 ID:???]
>>294
>>293読んでね
で、他にメソッド色々あるでしょ?マニュアル熟読してみてよ
しかも読めないとは書いてないじゃん、更新できないとは書いてあるけど
イロイロと勝手にわかったフリするのは学習の妨げになるよ

296 名前:nobodyさん mailto:sage [2012/01/05(木) 21:43:24.56 ID:???]
>>293
プリペアドステートメントを使う以外は従来と同じですね
あまり気にせず、
データが巨大な場合はmysqli_store_result
そうでない場合はmysqli_use_result
を使っておけばいいのかなぁ

297 名前:nobodyさん mailto:sage [2012/01/05(木) 21:52:18.06 ID:???]
>>291を理解できるまで何回か読んで考えてみたら
バッファリングせずにデータを読みたい場合とバッファリングしてからデータを扱いたい場合で変わってくるでしょう
前者はクエリを投げた時の状態を固定したままにしておきたいような場合に使えるでしょう
後者は別にデータ取得直後に変更が加えられても問題ない場合に使える
通常どちらを使えば良いかは考えなくてもわかるよね

>データが巨大な場合はmysqli_store_result
>そうでない場合はmysqli_use_result
どうしてこういう考えに至ったのかオレにはわからんけど、マニュアルの読解力もしくは理解できるまで辛抱強く読む努力が必要だと思うよ
なんとなくわかった気になるのが一番マズイ

298 名前:nobodyさん mailto:sage [2012/01/05(木) 22:42:32.96 ID:???]
…prepareは本来パフォーマンスをあげるためのものだよ。
何でもかんでも使えばいいってもんでもないけど。



299 名前:nobodyさん mailto:sage [2012/01/05(木) 22:48:03.29 ID:???]
>>286>>298は同一じゃん
おまえわかりやすくていいけどいい加減うぜーよ
しかもおまえ上で暴れてたニートのおっさんじゃん

300 名前:298 mailto:sage [2012/01/05(木) 22:51:18.40 ID:???]
>>299
証明ができなくてすまんが、おっさんにレスをしてた>>202とか>>232は俺ね。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<203KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef