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

【PHP】下らねぇ質問はここに書き込みやがれ 35

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/12/21(木) 13:42:19ID:???
PHPに関する質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 34
http://pc8.2ch.net/test/read.cgi/php/1165519374/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc8.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc8.2ch.net/db/subback.html
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
 しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
0232nobodyさん2006/12/25(月) 22:10:54ID:3ON9VEdM
少しスレ違いですいません。
XMLHttpRequestについて勉強しているのですが、
PHPで複数回レスポンスを送信するにはどうすればいいのでしょうか?
受信できるかどうかわかりませんが、

while ($a <= 10) {
 //$aを送信するとして、ココの記述が知りたい
}

という状態です。
よろしくお願いします。

0233nobodyさん2006/12/25(月) 22:24:25ID:???
10回のレスポンスをどうやってブラウザで受け取るんだ???
10個の値を書いてXML1回で渡すんじゃダメなの?
0234nobodyさん2006/12/25(月) 22:26:45ID:???
Firefoxで、アンカータグのラベル機能に関するバグ発見。

URLが http://example.com/hoge.php?x=10&y=20#label
のように引数の後にラベルがつく形になっているとき、
hoge.phpが出力するHTML内に<a name="label"></a>があっても、
そこにジャンプしてくれない・・・というバグです。

(ちなみにIEでは上記のやり方でしっかり飛ぶので、IEまたはFirefoxの仕様なのか
それともバグなのか、ハッキリしないけど)
0235nobodyさん2006/12/25(月) 22:28:00ID:???
>>225
HTML・CSSとPHPの間にJavaScriptをはさむのが主流。
漏れの場合は、HTML・CSSの次にXMLとFlashをやって、今PHP勉強中って感じ。
ActionScriptも多少かけるんで、JavaScriptもそれなりにいけるかなー
0236nobodyさん2006/12/25(月) 22:32:08ID:???
>>231
とほほ -> HTML/CSS -> K*NT -> Perl -> 一旦全て忘れて -> Perl -> Le*'s -> PHP -> 一旦全て忘れて -> PHP
0237nobodyさん2006/12/25(月) 22:32:33ID:FViFZp7L
file_get_contentsで読み込みたいURLの一部に$gggを代入するには
どうすれば良いのでしょう?
例えば、$gggが1234で http://abc.jp/test.php?r=1234
というURLにしたい場合、

<?php

$ggg = 1234

file_get_contents
("http://abc.jp/test.php?r=$ggg";);

?>

にすると、$gggの部分が無視されてしまいます。
0238nobodyさん2006/12/25(月) 22:35:45ID:???
おいwwww
ひろみちゅがコンドーム買ってるぞ。
清純な彼のイメージが(つД´)
0239nobodyさん2006/12/25(月) 22:35:51ID:???
>>235
そうなんだ・・。本屋とか行くとPHP&MySQLっていう本を良く目にするんだけど、PHP勉強すると同時にMySQLも勉強した
ほうがいいのかな。

0240nobodyさん2006/12/25(月) 22:43:33ID:3ON9VEdM
>>233
XML1回で渡すのはだめなんです。
どうやっても受け取れないもんなのでしょうか?
0241nobodyさん2006/12/25(月) 22:48:06ID:???
>>238
ユンケルローヤルA買ってるし
やる気満々?
0242nobodyさん2006/12/25(月) 22:48:27ID:???
>>240
そしたらクライアントのJavaScript側でループすべきだよ(10リクエスト10レスポンス)
どうにもループさせる理由がわからんが・・・
0243nobodyさん2006/12/25(月) 22:57:22ID:???
>>234
>firefoxでバグ

むぅ、たしかにIEだと成功するが、FFだとダメだな。。。
ちなみに俺のFFは最新の2.0.0.1だが、そっちは?
02442322006/12/25(月) 23:35:04ID:3ON9VEdM
>>240
ループさせる理由は、WebアプリでDB操作(INSERT/UPDATE)をするためなんです。
なので実際は10回どころか千・万単位のリクエストになります。
画面なしのバックグラウンドで動かすわけにはいかない、という条件です。
推定処理時間は数分です。
その処理時間の間に何か表示させたいと思っています。

無理な場合は、NowLoading...みたいな感じで処理中表示のajaxを使うつもりですが、
出来たらプログレスバーを作りたいと思ってajax、XMLHttpRequestについて勉強していました。

1リクエスト複数レスポンスというのは無理なんでしょうか、、、
0245nobodyさん2006/12/25(月) 23:37:29ID:???
何のために ajax があるというのか
0246nobodyさん2006/12/25(月) 23:44:44ID:???
>>244
だったら1件1件レスポンス返す必要ないでしょ。
DB更新するのと画面に何か表示させたいのは別の話。
02472342006/12/25(月) 23:54:14ID:???
>>243
当方の環境は、IE6.0、Firefox1.5と、2.0です。
Firefoxはどちらでもダメでした。
これって既知のバグなんでしょうか?
0248nobodyさん2006/12/25(月) 23:56:57ID:???
>>234
仕様だヴぉけ。htmlとphpの基礎をもう一度勉強してこいクズ
0249nobodyさん2006/12/26(火) 00:03:48ID:???
どの仕様?
0250nobodyさん2006/12/26(火) 00:09:52ID:???
仕様ならしょうがないね
0251nobodyさん2006/12/26(火) 00:52:31ID:???
>>248
html も php も全然関係ないじゃん

query 文字列の後に hash がくるのは正しい URL だし
それで常にジャンプできないようであれば
Firefox の不具合でしょ
0252nobodyさん2006/12/26(火) 01:12:54ID:???
実装してないだけで不具合っていうのもどうかと。
まぁバグだと思うならレポート出せばいいよ。
0253nobodyさん2006/12/26(火) 01:16:09ID:???
実装すべきなのを実装していないのもバグでしょ
けど、それらしい情報ないな
0254nobodyさん2006/12/26(火) 01:17:21ID:???
アンカーを実装してないって不具合ってレベルじゃねーだろ。
未完成といわれても仕方ない。
でも本当に本当なの?ちょっと信じられないのだが。
俺はFF入れてないからわかんないけどaタグの書き方とか間違ってない?
0255nobodyさん2006/12/26(火) 01:32:04ID:???
別に問題なくジャンプするよ。
0256nobodyさん2006/12/26(火) 01:33:02ID:???
俺もそんなバグ情報はいくら検索しても出てこなかった。
でも自環境でテストしてみたら、
たしかにFFのアンカーラベル機能は死んでる様子。
0257nobodyさん2006/12/26(火) 01:40:34ID:???
俺も簡単な実験をやってみた。

具体的には、test.php(ひたすら改行して、縦に長〜いページを出力するだけのスクリプト)で、
出力するHTMLの一番下(BODY閉じタグの直前)に、<a name="#label"></a>と記述。

この状態でtest.php#labelにFFからアクセスしても、ページ下部のラベルには飛ばない。
>>234はクエリ文字列のあとにラベルを付けた状態らしいが、俺はクエリ文字なしでも同じ結果だった。
0258nobodyさん2006/12/26(火) 01:41:46ID:???
>>257
拡張子を.htmlに変えたらどうなる?
0259nobodyさん2006/12/26(火) 01:45:49ID:???
> name="#label"
id="#label"
0260nobodyさん2006/12/26(火) 01:46:27ID:???
こんなんみつけた。name属性じゃなくてid属性でやってみてー

目的地アンカーの最適化
http://www.seo-equation.com/reference/cat17/end_anchor
>旧来の HTML では、a要素の name属性にアンカー名を付与して
>ウェブページ内の特定箇所をリンク先として参照できるようになる
>目的地アンカー(終点アンカー)が一般的に良く使われていますが、
>XHTML1.1 では、name属性は完全に廃止され、
>旧来の目的地アンカーのテクニックは利用できません。
>本文書では HTML4 の仕様から新たに登場した id属性を指定することで、
>これを代替する手法を解説します。
0261nobodyさん2006/12/26(火) 01:56:39ID:???
PHP利用メモリってどの位が適当か計算方法とかってありますか?
多分デフォルトのメモリ量では確実に不足してると思われるんですけど・・
0262nobodyさん2006/12/26(火) 01:58:20ID:???
script.php?name=value#label Firefox/1.5.0.9

<p id="label">なんたらかんたら</p> 飛ぶ。日頃使ってる。
<a name="label">ここへ飛べ</a> 昔、こうしてた。飛ぶ。
<a name="label"></a> さっき試した。飛ぶ。
<a name="#label"></a> IE6: なぜか飛ぶ/Fx: 飛ばない。

で、なんでFxスレなんですか。
0263nobodyさん2006/12/26(火) 02:07:00ID:???
FireFoxは完璧です。
バグだと疑うならまずはIEを疑ってください。

と信者が申してました。
0264nobodyさん2006/12/26(火) 02:13:18ID:???
>>261
やったこと無いけど、一番重そうなページで memory_get_usage とか
memory_get_peak_usage を使ってメモリの使用量を測定し、想定する
同時接続数を掛けてみてはどうか?
02652322006/12/26(火) 02:29:42ID:K7ycYnW/
>>246
すいません。書き方が悪かったので訂正します。

ループさせる理由は、WebアプリでDB操作(INSERT/UPDATE)をするためなんです。
なので実際は10回どころか千・万単位のリクエストになります。
画面なしのバックグラウンドで動かすわけにはいかない、という条件です。
推定処理時間は数分です。
その処理時間の間に、進み具合が分かるプログレスバーを表示させたいと思っています。

-----
元の書き込みのwhileは別例になります。
DBとか書かないほうが説明しやすいかと思いまして、、、
動作としましては、

Javascriptからの1リクエスト、
↓
----- ループ -----
PHPからのレスポンス送信
↓↑
Javascriptでのレスポンス受信
-----------------

が可能かどうかが知りたかったんです。
これが出来れば処理状況表示のプログレスバーも出来そうな気がするので、、、
よろしくお願いします。
0266nobodyさん2006/12/26(火) 02:42:30ID:???
やっぱりそれならレスポンス受信する分、リクエスト飛ばすしかないよ。
こんな感じじゃない?すげー重くなりそうだけど。

function insertDB(){
  for( i=0; i<100; i++ ){
    Ajaxでサーバに i 件目を格納させるリクエストを飛ばす;
    成功したらプログレスバーのwidthを+1pxする;
  }
}
0267nobodyさん2006/12/26(火) 02:55:40ID:???
setTimeout() か setInterval() 使いたまえよ

てかここって php のスレだよね
0268nobodyさん2006/12/26(火) 03:03:50ID:???
>>265
最初の一件のリクエストで何万件だかの SQL を発行
進捗とともに状況をファイルに書き出す
ajax で一定時間ごとにファイルを読みに行く

そんな難しいことじゃない

けど 232 はもっと勉強が必要だと思う
0269nobodyさん2006/12/26(火) 03:06:04ID:???
>264
ありがとうございます。
メモリの設定値はphp.iniを変更するだけでいいですよね?
大丈夫かなぁ

ちなみに関数の使い方はマニュアルをみたのですがなんか理解しずらいっす
0270nobodyさん2006/12/26(火) 03:14:54ID:???
htmlとphpが=だと思ってるやつは池沼。バグ云々の話だクズども
0271nobodyさん2006/12/26(火) 04:47:51ID:???
>>270
日本語でおk
0272nobodyさん2006/12/26(火) 05:09:35ID:???
的外れの回答をしたうえに謎の捨てゼリフか
0273nobodyさん2006/12/26(火) 09:30:48ID:???
>>238,241
女性用剃刀も買ってる。
パイパン&ソーセージでソフトSMかな。
0274nobodyさん2006/12/26(火) 09:43:15ID:???
俺も初めてのヒゲ剃り母ちゃんの使ってたから、
女性用のほうが慣れてるぜwww

でもパイパンにするのにあのカミソリじゃ危ない希ガス・・・
0275nobodyさん2006/12/26(火) 10:09:13ID:???
パイパンにしたいなら、男性用電動シェーバーのヒゲトリマーで全体を短くしてからにするとラク。
0276nobodyさん2006/12/26(火) 11:10:06ID:???
パイパンにするのにPHPはいらないだろ!
0277nobodyさん2006/12/26(火) 11:37:45ID:???
vipのクソスレコレクションを作りたいんですが
自動的にスレを保存するにはdatファイルにアクセス・読み込み・保存でよろしいのでしょうか?
datファイルとはお金をかけないと不正アクセス禁止法にひっかかるのでしょうか?
0278nobodyさん2006/12/26(火) 11:40:07ID:???
親クラスのアクセス制限は子クラスで変更できないって書いてあるけど(コメントのところ)
なんでだろ?他の言語では広げるのはできないけど、狭めるのはできるよね?
http://php.justdn.org/manual/ja/language.oop5.visibility.php

PDOのコンストラクタはpublic → 継承したSingletonクラスでpivateにしたい。
0279nobodyさん2006/12/26(火) 11:52:40ID:UoOJj1FX
教えて下さい。

登録サイト(mixiなど)でみかける住所フォームで、
都道府県を選択したら自動でその市区郡が選択できるようになるのがありますが、
PHPで同様なことをしたいのです。
どうしたらよいでしょうか?

参考になるコメント、助言お願いします。
0280nobodyさん2006/12/26(火) 11:54:33ID:???
>>279
PHPでは不可能です。
javascriptをご利用ください。
0281nobodyさん2006/12/26(火) 11:55:26ID:???
>>279
配列に都道府県を入れる
↓
foreachで吸い出す
0282nobodyさん2006/12/26(火) 11:57:24ID:???
>>278
できないのは仕様ですと言われればそれまでだからな・・・。

余談だけどPHPでシングルトンやるなら、結局は実行時にしかチェックされないってことも考えるといいかも。
たとえコンストラクタをprivateにしても、phpの場合は実行時にnewをして初めてエラーが出る。
だからJavaでコンパイル時にチェックさせるような実装を真似る必要はなくて、コンストラクタをpublicにしかできなくても、例えばクラス外からnewされたら例外を投げる、みたいなやり方で十分だと思う。
もしくは継承ではなく、コンポジションにする(PDOのインスタンスをプロパティとして持つ)って手もあるんじゃないかな。
0283nobodyさん2006/12/26(火) 11:59:15ID:???
>>279
非同期でやるならJavaScriptだけどmixiは画面遷移してるね。
都道府県が選択されたらonChangeでPostして都道府県IDを飛ばすだけだな
02842792006/12/26(火) 11:59:21ID:???
的はずした・・汗

都道府県を選択
↓
次のページへ移動
↓
市区群表示

じゃだめか?
0285nobodyさん2006/12/26(火) 12:04:01ID:TexWR+4f
postから受け取った値をhiddenでまわす処理をセッションで行いたいのですが、
hiddenをつかおうがセッションを使おうが、一回はpostされるわけですよね?
postの中身を改ざんされる恐れがあると思うんですが、
予防法などありましたらアドバイスお願いいたします。
0286279です2006/12/26(火) 12:07:27ID:???
>>283
>>284
なるほど。
やってみます。ありがとうございます。
0287nobodyさん2006/12/26(火) 12:18:22ID:???
>>285
postで何を受け取りたいの?
0288nobodyさん2006/12/26(火) 12:24:47ID:???
甘い思い出
0289nobodyさん2006/12/26(火) 12:28:10ID:???
なら時間とともに美化(改竄)されるのはしょうがないね。
0290nobodyさん2006/12/26(火) 14:05:13ID:Jf/WWK78
1,234,567みたいにカンマをつける書式に数値を文字列に変換する方法を教えてください
0291nobodyさん2006/12/26(火) 14:16:47ID:???
>>290
number_formatのこと?
0292nobodyさん2006/12/26(火) 14:40:10ID:???
おれはドブネズミですか?
02932782006/12/26(火) 15:01:13ID:???
>>282
的確な返答ありがとう。確かにもっともな話ですね。
あんまり考えないことにする(笑)
0294nobodyさん2006/12/26(火) 16:00:44ID:???
phpでプログラム作ってみたから、ライセンス認証を取り入れて公開してみようと思うんだけど、
どこかライセンス認証に向いてるシステム作ってるサイトしらない?
自分で作ってもいいんだけど、既存のものがあるなら見てみようと思ってさ。
0295nobodyさん2006/12/26(火) 16:03:11ID:???
>>294
一言余計。
自分で調べな
0296nobodyさん2006/12/26(火) 16:50:16ID:???
>>295
そういうケチを付けるだけの情報量ゼロないちゃもんもいりませんから。


とかいうとお前もなと不毛な鸚鵡返しが返ってくると↓↓↓↓↓↓↓↓
0297nobodyさん2006/12/26(火) 16:54:22ID:???
煽り合いはよくないよ^^
0298nobodyさん2006/12/26(火) 17:17:40ID:???
文字列から、0x00 やら BOM やらといった
不要な文字を除去したいのだけど
str_replaceにはどう書けばいいのでしょうか?
0299nobodyさん2006/12/26(火) 17:22:37ID:???
>>298
$str = str_replace(array("0x00", "BOM"), "", $str);
03002982006/12/26(火) 17:30:33ID:???
いやいやいやいや。
そのものではなくて、文字コード0x00とUTF-8のBOMという意味です。
0301nobodyさん2006/12/26(火) 17:40:21ID:fFhrPh3D
現在、PHP上から、サーバPCの電源断するVBSを使用しようとしていますが上手くいきません。

VBSファイルの内容は、
Set objSystemSet = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}").InstancesOf("Win32_OperatingSystem")
For Each objSystem In objSystemSet
objSystem.Win32Shutdown 8
Next

という割と有名なやつです。poweroff.vbsで保存されております。

PHP上の呼び出しは、
$ret = system("C:\**********\poweroff.vbs");

となっております。
PHP上で実行すると、確かにシャットダウンは開始するのですが、
画面が暗転してシャットダウンが途中で止まったり、
ログイン時のダイアログが表示されたり、たまに完全にシャットダウンされたりします。

ちなみに直接VBSを呼び出すと無事シャットダウンされます。

OSはXP、Apache1.3.28+PHP4.4.2です。

何か原因があるのでしょうか?
0302nobodyさん2006/12/26(火) 18:10:25ID:???
chmのphpマニュアルの文字化けはいつになったら治りますか?
0303nobodyさん2006/12/26(火) 18:38:36ID:Jf/WWK78
>>291
そそそ、それでした!!
ありがとうございまーす
0304nobodyさん2006/12/26(火) 20:37:52ID:???
>>302
おまえの環境をみなおしたほうがいいよ。
おれは文字化けない。
03052322006/12/26(火) 20:53:02ID:???
>>268
そういう手法は全く考えてませんでした。
ズバリな回答ありがとうございました!

> けど 232 はもっと勉強が必要だと思う
(´・ω・`) がんばります
0306nobodyさん2006/12/26(火) 21:18:27ID:???
2ちゃんねるのdatファイルからタイトルを取得したいのですが、
ログのどこみたらのってますか?
0307nobodyさん2006/12/26(火) 21:34:01ID:???
>>306
スレ違いも甚だしい
0308nobodyさん2006/12/26(火) 22:21:43ID:???
>>306
ヒントをやるから自分でみつけろ

1. http://pc8.2ch.net/php/dat/1166676139.dat
2. 「<>」で区切ってある


しかし2ちゃんねるはデータベースを用いないのな。
0309nobodyさん2006/12/26(火) 22:47:18ID:???
5つ目にありました。ありがとうございました。
0310nobodyさん2006/12/27(水) 00:49:17ID:uQ88JK/1
ケーキ食べたいんですけど、どこのコンビニのケーキがいいですか?
0311nobodyさん2006/12/27(水) 00:51:59ID:???

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ <こいつ最高にアホ
 彡、   |∪|  /
/ __  ヽノ /
(___)   /
0312nobodyさん2006/12/27(水) 00:58:17ID:0HWbicIg

$tit ="この部分";
//〜〜
$Yow ="この部分";
//~~
//~~~^^
$ok ="この部分";
//〜〜

このように記述されてるPHPの「各""(ダブルクォーテーション)の中」に
「文字を書き込み」、かつ「""の中身」に既に文字が入っていれば
「上書きして文字を書き込む」PHPを作成したいのですがどうすれば良いでしょうか
0313nobodyさん2006/12/27(水) 01:00:16ID:???
意味わかんね
0314nobodyさん2006/12/27(水) 01:02:35ID:0HWbicIg
指定されたファイルの文章中の

$tit ="この部分と";
//〜〜
$Yow ="この部分と";
//~~
//~~~^^
$ok ="この部分";
//〜〜

に特定の文字を書き込むPHPを作成したいのですがどうすれば良いでしょうか
0315nobodyさん2006/12/27(水) 01:06:46ID:???
下記のコードをShift_JISで保存して実行すると
<?php
mb_internal_encoding("UTF-8");
$str = 'あaいiうuえeおoかkaきkiくkuけkeこkoさsaしshiすsuせseそsoたtaちchiつtsuてteとto';
echo mb_substr(mb_convert_encoding($str, 'UTF-8', 'SJIS'), 0, 10);
echo "\n";
echo mb_convert_encoding(mb_substr($str, 0, 10), 'UTF-8', 'SJIS');
?>
結果が

あaいiうuえeおo
あaいiうu

となります。mb_substrの返り値が違うのは
Shift_JISは1〜2byteのみで表現するのでbyte数で返してもほとんど支障はない
UTF-8は1〜6byteで表現しbyte数で返すと文字数が少なすぎる場合があるので文字数で返す
ということでいいんでしょうか?
03163152006/12/27(水) 01:07:45ID:/UATDQ7l
ID忘れました。
0317nobodyさん2006/12/27(水) 01:18:25ID:???
例題
ノロが怖いので丁寧にチンチンを洗ったら気持ちよくなりました。
ノロって気持ちいいんですね。

上の条件を満たす関数を作りなさい。
優秀賞はノロウィルス一年分贈呈
0318nobodyさん2006/12/27(水) 01:26:54ID:uQ88JK/1
いまカミナリがなってます。
パソコンが壊れた場合、phpがインストールできなくなるのでしょうか?
0319nobodyさん2006/12/27(水) 01:31:01ID:???
>>318
はい。
使い物にならなくなるので、粗大ゴミに出してください。
0320nobodyさん2006/12/27(水) 02:04:27ID:???
>>314
置き換えたい文字列をあらかじめ __hogehoge__ とかにしておいて、
すべて変数$beforeにいれておき

$after = str_replace( $before, "__hogehoge__", "書き込みたい文字列" );
0321nobodyさん2006/12/27(水) 02:47:16ID:???
>>320
ありがとうございます
0322nobodyさん2006/12/27(水) 02:56:36ID:???
switchっていうのは、
ifとelseifのみの、elseがない条件文のようなものという認識であってますか?
0323nobodyさん2006/12/27(水) 02:59:17ID:???
あってない
0324nobodyさん2006/12/27(水) 03:31:32ID:???
初心者のとき以外switch文なんか書いてないしこれからも書くことはないだろう。
なんかメリットあるのか?
0325nobodyさん2006/12/27(水) 03:38:49ID:???
OS のネイティブアプリとかで
message (イベント)を処理するときに使う
if 文で書くと冗長になる
0326nobodyさん2006/12/27(水) 03:56:17ID:???
条件 a の時に処理 1 を
条件 b の時に処理 1 と 2 をなんて時に使う
if 文で書くと
同じことを複数書くか(メンテナンス性が最悪)
if 文を増やすか(速度的なペナルティがある)するしかない

Web アプリではあまり使わないけれども
0327nobodyさん2006/12/27(水) 08:39:13ID:???
あぁ、冬休みになったんだなぁ…
0328nobodyさん2006/12/27(水) 10:08:35ID:???
switchを絶対使わないって何かgotoみたいなアレかねw
0329nobodyさん2006/12/27(水) 10:19:29ID:???
PHPのswitch文は便利じゃん。
別にデメリットがあるわけでもなし、
使わんとかいう理由がわからん。

…と、思ったんだけど、
自分のソース見たら使ってなかったw
0330nobodyさん2006/12/27(水) 12:34:33ID:???
男なら全部if~else
0331nobodyさん2006/12/27(水) 12:39:10ID:???
男なら配列で済ますか、関数ポインタ
■ このスレッドは過去ログ倉庫に格納されています