【PHP】下らねぇ質問はここに書き込みやがれ 30
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2006/10/05(木) 01:38:25ID:y1WWhz/pまず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄に何も記述しないでください)
2. サーバーのOS、WebサーバーとPHPの種類やバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。「エラーが出ます」では絶対分かりません。
5. 質問者としても態度をわきまえること。
6. 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・質問者は必ずIDを表示させてください。(メール欄に何も記述しないでください。)
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
(逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
(荒らし、煽りは除く。逆に煽られたときも、無闇に反論せずスルーすべし)
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え。理解できないならムリに使うな。
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0967nobodyさん
2006/10/24(火) 23:34:01ID:???0968nobodyさん
2006/10/24(火) 23:56:44ID:???0969nobodyさん
2006/10/25(水) 00:02:50ID:noTSvRA3サイト上の特定のワードを、特定の文字に置き換えることはPHPで簡単にできますか?
例えば、 英文字の DOG というのを すべて日本語の 犬 に置き換えるという具合です。
できるとすればどんな構文になるのでしょうか? お願いします。
0970nobodyさん
2006/10/25(水) 00:11:44ID:???0971nobodyさん
2006/10/25(水) 00:24:22ID:noTSvRA3翻訳できない造語(英語)や日本語のローマ字入力なんかがあるのでブックマークレットは
使えないので残念です。
0972nobodyさん
2006/10/25(水) 00:24:54ID:???0973nobodyさん
2006/10/25(水) 00:33:46ID:???2つ3つの単語を対応する単語に置き換えるならともかく、
まともな翻訳処理を施すなら単語の置換どころの騒ぎではなくなる。
素直に検索サービスに飛ばすブックマークレット使え。
0974nobodyさん
2006/10/25(水) 00:37:00ID:noTSvRA3私の説明が悪かったです^^;
置き換えは英語、日本語関係なく、
サイト内の 「AAA」 という単語を、 単純に「BBB」 と置き換えるだけです。
置き換えたい単語は全部で10個程度です。
宜しくお願いします。
0975nobodyさん
2006/10/25(水) 00:44:18ID:???サーバ上のファイルで一括置換したいという意味であれば適当なテキストエディタ使え。
0978965
2006/10/25(水) 00:47:47ID:???「PHPのforeachが繰り返しの抽象化としてのイテレータなのか」という議論はおいといて、
>>921のリンク先では関連項目のforeachにはPHPのそれが載っているが、
イテレータには載っていない。
この文脈では、PHPのイテレータとしてはIteratorを挙げるのが適当では?
ということ。
話は変わるけどimplements IteratorはJavaやPythonの例のように、
イテレーションのインターフェイス(巻き戻し、次の要素、次があるかの問い合わせ)
を提供するわけで、
・ある集合に繰り返しの窓口を設けるもの。
対してforeachは、
・繰り返しの窓口に対して、順番に要素を取り出すもの。
という事じゃないだろうか?
0979nobodyさん
2006/10/25(水) 00:55:17ID:noTSvRA3どんな関数で置き換えができるのでしょうか?
PHP詳しくないんですみません。ヒント教えていただければ検索してみます。
0980nobodyさん
2006/10/25(水) 00:58:49ID:???マニュアルを最初から読まないことを前提にしてる人にまで回答してられないよ。
というか、その内容ならPHP使わない方がいいんじゃない?
Windows用の置換ツールとか使った方がいいでしょ。
0981nobodyさん
2006/10/25(水) 01:02:55ID:noTSvRA3$hoge = array(
'1'=>'犬',
'2'=>'猫',
'3'=>'フェレット',
);
$line = "1 2 3";
$line2 = strtr($line,$hoge);
こんな感じでやってるんですがなかなか・・・
0982nobodyさん
2006/10/25(水) 01:07:33ID:???0983nobodyさん
2006/10/25(水) 01:13:01ID:???0985nobodyさん
2006/10/25(水) 01:17:54ID:noTSvRA3$hoge=str_replace("dog","犬",$Str);
で、できました!お騒がせしました。
でも、あってますよね^^; 一応ウェブサイト上では置換えできてます
0986nobodyさん
2006/10/25(水) 01:18:26ID:???> この文脈では、PHPのイテレータとしてはIteratorを挙げるのが適当では?
いや、ぶっちゃけforeachだけ載せても、SPLのIteratorまで載せても、大した問題じゃないと思うけど。
perlのとこだってforeachとwhile-eachの例しか載ってないし。
せいぜいIteratorってのもあるよ、ってくらいのコメントで十分かと。
0987nobodyさん
2006/10/25(水) 01:38:21ID:???筆者がたまたまPHPを知らなかっただけの話でしょ。
// 例
class Records implements Iterator {・・・}
$records = new Records();
// 内部イテレータ
foreach ($records as $index => $record) {
処理
}
// 外部イテレータ
for ($records->rewind(); $records->valid(); $records->next()) {
$record = $records->current();
$index = $records->key();
処理
}
0988nobodyさん
2006/10/25(水) 02:03:01ID:???何回計ってもstr_replaceの方が倍以上速い
どう考えてもstrtrのほうが軽そうなのに
0989nobodyさん
2006/10/25(水) 02:10:30ID:???0990nobodyさん
2006/10/25(水) 02:14:28ID:rZkuwLJpさらに一歩進むなら
$hoge=str_replace(array("dog","cat"),array("犬","猫"),$Str);
0992nobodyさん
2006/10/25(水) 02:30:26ID:???(何回も繰り返すと、strtrのほうが速いときも少なくないし)
988のベンチとった実際のコードキボンヌ
0993nobodyさん
2006/10/25(水) 02:45:49ID:???配列じゃない方も対象文字列が長くないとダメね
0994nobodyさん
2006/10/25(水) 07:16:01ID:???strtrは文字列置換ではなく文字置換
strtr("ABC", "XYZ", "A1B1C1");
A=>X, B=>Y, C=>Zに置換されX1Y1Z1になる
0995nobodyさん
2006/10/25(水) 07:22:26ID:???strtr("A1B1C1", "ABC", "XYZ");
phpは似たような関数で引数の順番が違うからいちいちマニュアルで確認しないといけない
0996nobodyさん
2006/10/25(水) 08:00:56ID:???・「ですます調」が中途半端に混ざっててキモイので全て「非ですます調」に統一。
・過去スレを全部リストアップするのは色々な意味で無駄なので5つ程度に制限。
・関連リンクでZFのマニュアルは日本語版があるので修正。
・関連スレは確認が面倒なので削除(どのスレも「php」で検索するだけでヒットするのにリストアップする必要性を感じない)。
・FAQは変なとこで改行されててムカつくので、変な改行を除去。
・printはecho同様に関数ではなく、値を返すだけなので修正(数スレ前に話題に出た)。
0997996
2006/10/25(水) 08:11:19ID:???1000まで残り少ないし。
変だったら、さらにその次のスレから直してください。
0998996
2006/10/25(水) 08:13:52ID:???スマソが誰が任せた。
0999nobodyさん
2006/10/25(水) 08:27:59ID:???1000nobodyさん
2006/10/25(水) 09:13:56ID:???【PHP】下らねぇ質問はここに書き込みやがれ 31
http://pc8.2ch.net/test/read.cgi/php/1161733546/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。