弐ch編集のPerl講座 (231レス)
弐ch編集のPerl講座 http://medaka.5ch.io/test/read.cgi/php/1013725517/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
1: 弐ch編集 [] 02/02/15 07:25 ID:zi+qnSnN なんか俺の偽者がいるから俺の本命Perlでたててみた。 とりあえず読み書きできるようにするか。 そうすりゃ自分で掲示板くらい組めるようになるだろうし。 http://medaka.5ch.io/test/read.cgi/php/1013725517/1
2: 2 [] 02/02/15 07:27 ID:oL67ZYlw 氏ね >>1 http://medaka.5ch.io/test/read.cgi/php/1013725517/2
3: 弐ch編集 [sage] 02/02/15 07:32 ID:??? #! /usr/local/bin/perl print "Content-type: text/plain\n"; print "\n"; print "MegabbsXP!\n"; 基本だな。 まずはヘッダを出力。とりあえずプレーンテキストだからtext/plain。 ヘッダと本文の間は一行空けるために改行を入れる。 じゃないとどこまでがヘッダか分からんから。 もちろんこれは"Content-type: text/plain\n\n"ってまとめてOK。 で次は本文を出力してるわけだ。画面にきちんとでれば成功。 http://medaka.5ch.io/test/read.cgi/php/1013725517/3
4: 弐ch編集 [sage] 02/02/15 07:44 ID:??? #! /usr/local/bin/perl $text = 'MegabbsXP!'; print "Content-type: text/html\n\n" print qq|<html><body text="#FF0000">$text</body></html>|; exit; 次は$textに代入してHTML表示だ。HTMLだからtext/html。 printの次がqq||で囲まれてて変だろ。これはとりあえずqqという関数だと思ってくれ。 意味は「値を""で囲まれてるものとして扱う」かな。 なんでこんなめんどくさいことをするかっていうと、""のなかで"を使いたいから。 普通に"text="#FF0000""ってやったらどこが区切りだかわけ分からんからな。 こういう場合は"text=\"#FF0000\""とエスケープするのが普通だが "を多用するHTMLでいちいちエスケープしてたら見にくいだろ?だから。 まあqq||なので|を使いたいときはエスケープしなくてはならないが…。 ちなみにqq~~とかqq()とかもできるぞ。 最後のexitはまんま終了な。前回書き忘れたが。 http://medaka.5ch.io/test/read.cgi/php/1013725517/4
5: 名無しさん@お腹いっぱい。 [sage] 02/02/15 07:50 ID:??? 俺はお前の精神構造が理解出来ない かまって欲しいのか、奉仕の快感を得たいのか 前に自分の板でやってたのと同じ主旨だろう? 正直、初めはお前の企画に期待してたんだが 最近ではウンザリだ MEGABBS-XP、MEGABBSバグ無し版(現金徴収済)、二編perl講座 他にも企画倒れが有ったら教えてくれ http://medaka.5ch.io/test/read.cgi/php/1013725517/5
6: 弐ch編集 [sage] 02/02/15 08:05 ID:??? open(IN, './log.dat') or &error; @lines = <IN>; close(IN); これでファイルが読める。どうだ?Perlは俺と同じくらいすごいだろ? openでファイルハンドルINとファイルを結びつける。 openは失敗すると偽を返す。そうするとorが反応して&errorが呼ばれる。 &errorはてきとうなエラー表示関数な。or dieとしてdie関数を呼んでもいいが、 掲示板なら「ファイルが開けませんでした」とか表示したいだろ? だからわざわざエラー表示関数を呼ぶ。 で@lines。ファイルの改行までをひとつのデータとみて どんどん配列にぶちこまれるってわけだ。 そしてクローズ。これでINとファイルはきれいに手を切ることができる。 ところで、この方法にはいろいろ問題がある。配列にファイルの全データが 読み込まれる点だ。極端な話、ファイルが500MBあったらそれが全部配列に 代入されちまう。メモリ上に500MB読み込まれるってわけ。お前のパソコン メモリ何MB?64MB?即死だな。お前が一人で勝手に死ぬのはかまわんが、 サーバー上にはお前以外の人も住んでいるから、その人たちも迷惑をこうむる。 最悪だな。そんなんじゃお前は俺と同類だぞ?ようこそMegabbsへ。 じゃあどうすればいいのかっていうと、次。 http://medaka.5ch.io/test/read.cgi/php/1013725517/6
7: 弐ch編集 [sage] 02/02/15 08:19 ID:??? open(IN, './log.dat') or die; while($line = <IN>) { print $line; } close(IN); $line=<IN>で$lineに改行まで一行だけ読み込まれるから whileでぐるぐる回して好きな処理をするわけだ。 つまり<IN>が全部返すが一行返すか 自分の相手をみて勝手にやってくれてるようなもんだ。 この「相手が変数か配列か」っていうのはPerlでは結構重要な部分だと 俺は個人的には思っている。だからお前も思え。 話を戻すが、これなら一行づつだからメモリも安泰なわけだ。 6で俺が書いたお前のパソコンうんぬんっつーのは、ローカルでやるならOKってこと。 お前がお前のパソコンで@lines=<IN>するのは問題ない。お前が死ぬだけだし。 だが鯖上には他の人もいるからやめろってこと。 だから例えば少しのデータをお前がローカルで処理したい時は @lines=<IN>の方が簡単だからそれでいいじゃん、と。頭は使いようだぞ? http://medaka.5ch.io/test/read.cgi/php/1013725517/7
8: 弐ch編集 [sage] 02/02/15 08:22 ID:??? ゴメン、やっぱり飽きたからやめるよ (=´Д`=) じゃっ http://medaka.5ch.io/test/read.cgi/php/1013725517/8
9: 弐ch編集 [sage] 02/02/15 08:36 ID:??? open(OUT, "> ./log.dat") or die; print OUT "MegabbsXP!\n"; close(OUT); 書き込み。>は上書きの記号だ。覚えろ。 print OUTもなんとなく分かるだろ?OUTに書き込むって意味。 で、クローズ。終わり。 注意すべきは>は上書きだということ。openは最初にファイルを 空にして、それからファイルハンドルとくっつけるイメージだ。 だからor dieの時、つまりopenが失敗した時には ファイルは空、しかも書き込みもできずっていう最悪パターンだ。 常套手段としてはこれ。 $tmp = './log.tmp'; $file = './log.dat'; open(OUT, "> $tmp") or die; print OUT "MegabbsXP!\n"; close(OUT); chmod(0600, $tmp); rename($tmp, $file); テンポラリに書きだして、それが成功したのを見届けてからリネーム。 これならopenに失敗してもlog.datは生きてる。無関係だから。 ちなみにrenameも失敗する時があるのだが…まあそれは自分でorしてくれ。 chmodは宿題。自分で調べろ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/9
10: 弐ch編集 [sage] 02/02/15 09:27 ID:??? ($name1, $name2, $god) = ('mike', 'mary', 'nihen'); @names = ('mike', 'mary', 'nihen'); @names = qw(mike mary nihen); %data = (name1 => 'mike', name2 => 'mary', god => 'nihen'); %data = qw(name1 mike name2 mary god nihen); 分かるよな?分かるようになれ。代入の話だ。 qwはqqと同じようなもので「配列として扱う」ものだ。空白や改行が区切りとみなされる。 qw[]やqw~~でもOK。 $line = <IN>; ($no, $name, $comment) = split(/<>/, $line); ファイルを処理するループの中でこんなのを見たことがあると思う。 splitで配列が返ってきてるからそれを代入してるわけだ。 ファイルの中身は「1<>nihen<>i am god.」こんな感じだろうな。 じゃあちょっとひねってみるか。 ($log{'no'}, $log{'name'}, $log{'comment'}) = split(/<>/, $line); ハッシュに入れてる。OK?さて。ここでハッシュの配列を表すいい方法がある。 @log{('no', 'name', 'comment')} = split(/<>/, $line); これだ。これをハッシュスライスという。そのままハッシュのいくつかを並べた配列、だな。 見ればなんとなくやってること分かるだろ?勘のいいお前ならこうもいけることに気付くはず。 @log{qw(no name comment)} = split(/<>/, $line); な。 だがqw(no name comment)をスクリプトのいろんな場所にいちいち書くのはコピペでも面倒だし、 途中で要素、例えばmailとかが増えると全部書き換えなくてはならない。女関係なみの面倒臭さだ。 そこでこうしてみる。 @format = qw(no name comment mail); $line = <IN>; @log{@format} = split(/<>/, $line); これで@formatを書き換えるだけでこいつを使う全ての個所に対応できるようになった。俺のようにCOOLだろ? http://medaka.5ch.io/test/read.cgi/php/1013725517/10
11: 名無しさん@お腹いっぱい。 [sage] 02/02/15 09:42 ID:??? これ以上Perlスレ増やして何する気だ? http://medaka.5ch.io/test/read.cgi/php/1013725517/11
12: 賛成の反対の反対ナノだ! [sage] 02/02/15 09:53 ID:??? > 9 > だからor dieの時、つまりopenが失敗した時には > ファイルは空、しかも書き込みもできずっていう最悪パターンだ。 > openが失敗したのにファイルが空になるのか? ファイルが空になるということは空文字を書きこめたということでは? 詳しく説明しろYO! http://medaka.5ch.io/test/read.cgi/php/1013725517/12
13: 弐ch編集 [sage] 02/02/15 10:13 ID:??? print OUT join('<>', @log{@format}),"\n"; 書き込みは当然こうなるはずだ。分かるな?次はrequire。 #! /usr/local/bin/perl require './mytext.pl'; print qq|Content-type: text/html\n\n|; print qq|<html><body text="#FF0000">$text</body></html>|; exit; mytext.plを読み込んでる。イメージとしてはスクリプトのその場所に 指定したファイルが展開されてる感じだ。つまりmytext.plが $text = 'MegabbsXP!'; 1; なら、スクリプトが #! /usr/local/bin/perl $text = 'MegabbsXP!'; 1; print qq|Content-type: text/html\n\n|; print qq|<html><body text="#FF0000">$text</body></html>|; exit; と書かれているようなイメージ。なせmytext.plの最後に1;があるかというと、requireは自分が 成功したのか失敗したのか知る時にファイルの最後の式の真偽で判断するからだ。 だから最後にわざと真をおいてやるわけ。まったくうちの子のように手がかかる…。 で、こうもできる。 # mytext.pl $text = $text . '?'; 1; #! /usr/local/bin/perl $text = 'MegabbsXP!'; require './mytext.pl'; print qq|Content-type: text/html\n\n|; print qq|<html><body text="#FF0000">$text</body></html>|; exit; 出力はMegabbsXP!?になる。簡単だ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/13
14: 弐ch編集 [sage] 02/02/15 10:55 ID:??? >>12 ああ、書き方がおかしかったな。flockとrenameを抜いてしまっていてはな。 print中にスクリプトが停止された場合というべきだった。 そうするとログが破壊される。途中までしか書けてないから。 http://medaka.5ch.io/test/read.cgi/php/1013725517/14
15: 弐ch編集 [sage] 02/02/15 11:01 ID:??? #! /usr/local/bin/perl use strict; $text = 'MegabbsXP!'; print qq|Content-type: text/html\n\n|; print qq|<html><body text="#FF0000">$text</body></html>|; exit; use strictとは文字通りstrictというものを使うという意味だ。 てきとうにいうとstrictとは未知の値が出てくるとスクリプトエラーになる能力を 持っているライブラリってとこかな。この状態でスクリプトを組んでいけば エラーが分かりやすくなって開発効率もあがる。 ちなみにこのスクリプトもエラーになるはず。なぜなら$textが いきなり出てきているから。どこの誰なのか明確にしてやる必要があるわけだ。 my $text = 'MegabbsXP!'; これでOK。「どこ」なのかは分からないが、メインスクリプトで「どこ」はmainだということになっている。 そしてmainがmy $text、つまり私の$textですと言ってるわけ。 # mytext.pl package MyText; use strict; my $text = 'god'; 1; #! /usr/local/bin/perl use strict; my $text = 'MegabbsXP!'; require './mytext.pl'; print qq|Content-type: text/html\n\n|; print qq|<html><body text="#FF0000">$text</body></html>|; exit; 「どこ」はpackageで宣言できる。mytext.plではMyTextだな。たしかあらたにpackageが 宣言されるかファイルの終わりまでがMyTextの世界。出力は「MegabbsXP!」…分かるよな? 暗黙で自分のpackageの変数が呼ばれるからだ。つまりmainもpackageのひとつにすぎなかったということ。 MyTextの$textは正式名称「$MyText::text」だ。どこの誰か、だ。 よく見かける&jcode::convertがいい例だな。あれはpackage jcodeの中のconvert関数という意味。 http://medaka.5ch.io/test/read.cgi/php/1013725517/15
16: 賛成の反対の反対ナノだ! [sage] 02/02/15 11:31 ID:??? > 15 > MyTextの$textは正式名称「$MyText::text」だ。どこの誰か、だ。 > my $text と局所化されているのでパッケージもヘッタクリもないダロウ? http://medaka.5ch.io/test/read.cgi/php/1013725517/16
17: 弐ch編集 [sage] 02/02/15 11:37 ID:??? my %tmp = (); @tmp{qw(no name com)} = split(/<>/); my $log = \%tmp これで$tmp{'no'}は$log->{'no'}とも表せるようになった。リファレンスだ。 \%tmpで%tmpのアドレスが取得でき、それが$logに代入されているわけだが… 簡単には「○○のところの」が$logに入ったわけだ。$logの指すところのno。つまり$tmp{'no'}。 だから$log->{'no'}を変更すると$tmp{'no'}も変わる。 my %log = %tmp; の場合、これは単純なコピーなので$log{'no'}を変更しても$tmp{'no'}は変わらない。別物だから当然だ。 %tmpはマイドキュメントにあるフォルダで$logはデスクトップに置いた%tmpへの ショートカットだと言えば分かるか?%logはデスクトップにフォルダごとコピーしたってとこだな。 my $log = []; my $log = {}; これで@tmpや%tmpなどを使わずいきなりリファレンスが作れる。上は配列、下はハッシュ。 $logを元のもののように扱うのには@$log、%$logなどとすればいい。簡単だ。 見やすく分かりやすくする意味で@{$log}、%{$log}としてもいいかもな。 具体的には push(@{$log}, 100); @{$log}{qw(no name com)} = split(/<>/); などと使える。 push(@{$log}, \%tmp); とした時に$log->[0]->{'no'}は$tmp{'no'}だということが分かれば上出来だ。 そうそう、$log = \$textなら$$logか${$log}、な。 で、なぜこんなものを使うかという話だが。一番単純にはメモリだ。 上の例でいえばHDDがもったいないからということ。 まあ他にもいろいろあるがそれは使っていくうちに分かるだろう。 使える場面では使っていったほうがいい。 http://medaka.5ch.io/test/read.cgi/php/1013725517/17
18: 賛成の反対の反対ナノだ! [sage] 02/02/15 12:01 ID:??? ゴメン、やっぱり飽きたからやめるよ (=´Д`=) じゃっ http://medaka.5ch.io/test/read.cgi/php/1013725517/18
19: 賛成の反対の反対ナノだ! [sage] 02/02/15 12:17 ID:??? > 1 > なんか俺の偽者がいるから俺の本命Perlでたててみた。 > 18に漏れの偽者もいるんだけど スレはたてないでおこう。 http://medaka.5ch.io/test/read.cgi/php/1013725517/19
20: 名無しさん@お腹いっぱい。 [sage] 02/02/15 12:28 ID:??? このスレは一体何がしたいんですか? 間違った知識をひけらかして。 http://medaka.5ch.io/test/read.cgi/php/1013725517/20
21: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/21
22: 名無しさん@お腹いっぱい。 [sage] 02/02/16 17:51 ID:??? まじめな話、無茶苦茶な話をするのは勘弁してくれ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/22
23: 名無しさん@お腹いっぱい。 [sage] 02/02/16 21:03 ID:??? わかんね。 http://medaka.5ch.io/test/read.cgi/php/1013725517/23
24: 名無しさん@お腹いっぱい。 [] 02/02/16 21:13 ID:7dTs20wP >>1さん、勉強になります! http://medaka.5ch.io/test/read.cgi/php/1013725517/24
25: 名無しさん@お腹いっぱい。 [sage] 02/02/16 21:13 ID:??? >>23 理解する必要なし。バカにされるっす。 http://medaka.5ch.io/test/read.cgi/php/1013725517/25
26: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/26
27: ” [!] 02/02/17 12:11 ID:??? 姫ハケーン!!!ハァハァw http://medaka.5ch.io/test/read.cgi/php/1013725517/27
28: 名無しさん@お腹いっぱい。 [sage] 02/02/17 15:41 ID:??? >>1 偽物の方が役に立っていたのだが。 http://medaka.5ch.io/test/read.cgi/php/1013725517/28
29: 名無しさん@お腹いっぱい。 [0d] 02/02/17 17:38 ID:??? >>1 とりあえずホンモノの姫の方は、 姫萌え野郎どものために スカートをめくってパンチラを見せてあげることだ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/29
30: 名無しさん@お腹いっぱい。 [sage] 02/02/17 17:39 ID:??? >>29 胸だけはだけての方がいいなぁ・・・はぁはぁ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/30
31: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/31
32: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/32
33: 名無しさん@お腹いっぱい。 [11] 02/02/17 18:21 ID:??? open(OUT, "> ./log.dat") or die; print OUT "姫の尻穴チェーック!!\n"; close(OUT); http://medaka.5ch.io/test/read.cgi/php/1013725517/33
34: 名無しさん@お腹いっぱい。 [sage] 02/02/17 18:25 ID:??? >>33 まさにディスクのゴミだなw。 http://medaka.5ch.io/test/read.cgi/php/1013725517/34
35: 名無しさん@お腹いっぱい。 [11] 02/02/17 18:57 ID:??? open(OUT, "> ./log.dat") or die; print OUT "「ふしぎの海のナディア」って感じでやってみるかな。 現在決定したキャストは、 ナディア=弐編姫 ネモ=ひろゆき ガーゴイル=切込み かな。 いや、 ネモ=切込み ガーゴイル=ひろゆき かな。現実上の役職では、 ガーゴイル=切込み ネモ=ひろゆき だが。 \n"; close(OUT); http://medaka.5ch.io/test/read.cgi/php/1013725517/35
36: 名無しさん@お腹いっぱい。 [sage] 02/02/17 18:59 ID:??? >>35 文字列に改行入れるなよ・・・レベルがばれるぞ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/36
37: 名無しさん@お腹いっぱい。 [sage] 02/02/17 19:04 ID:??? /∵∴∴,(・)(・)∴| うるせー馬鹿! http://medaka.5ch.io/test/read.cgi/php/1013725517/37
38: 名無しさん@お腹いっぱい。 [11] 02/02/17 19:30 ID:??? >>36 本当なら\nっていちいち書くよ、無論w http://medaka.5ch.io/test/read.cgi/php/1013725517/38
39: 名無しさん@お腹いっぱい。 [sage] 02/02/17 19:38 ID:??? >>38 はあ、何逝ってんのオマエ?? 白痴は消えろや http://medaka.5ch.io/test/read.cgi/php/1013725517/39
40: 名無しさん@お腹いっぱい。 [sage] 02/02/17 19:49 ID:??? いや、ヒアドキュメントで良いじゃん。 http://medaka.5ch.io/test/read.cgi/php/1013725517/40
41: 名無しさん@お腹いっぱい。 [〜] 02/02/17 20:01 ID:??? >>39 姫、生理か?w http://medaka.5ch.io/test/read.cgi/php/1013725517/41
42: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/42
43: くりはらせんせ [sage] 02/02/17 21:53 ID:??? よろしく http://medaka.5ch.io/test/read.cgi/php/1013725517/43
44: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/44
45: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/45
46: 名無しさん@お腹いっぱい。 [sage] 02/02/18 09:52 ID:??? どんな理由があるにせよ、スレ立て荒らしよりコピペ荒らしの方が規制されやすいの法則。 http://medaka.5ch.io/test/read.cgi/php/1013725517/46
47: 名無しさん@お腹いっぱい。 [sage] 02/02/18 09:53 ID:??? そろそろ、うるせー馬鹿を貼りまくってる奴に関して、 削除依頼で対応してみようか? スレ立て荒らしもカスだが、コピペ荒らしもカス。 http://medaka.5ch.io/test/read.cgi/php/1013725517/47
48: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/48
49: 名無しさん@お腹いっぱい。 [sage] 02/02/18 11:41 ID:??? . ∧ ∧ ( ´ ・∀・`) うるせー馬鹿! http://medaka.5ch.io/test/read.cgi/php/1013725517/49
50: 弐ch編者 ◆ZAdjmi0s [] 02/02/18 23:54 ID:hYF5tvk1 >>1 漏れだったら open FILE,$file ていうふうに括弧つかわないし; splitだって split /<>/, $line; こうするです。。。 http://medaka.5ch.io/test/read.cgi/php/1013725517/50
51: 弐ch編者 ◆ZAdjmi0s [] 02/02/18 23:55 ID:hYF5tvk1 というわけでなんとなーく引き継いでperl講座でも。 多分大体の人はwindows環境でしょうからそれを前提に進めていきます。 http://medaka.5ch.io/test/read.cgi/php/1013725517/51
52: 名無しさん@お腹いっぱい。 [sage] 02/02/18 23:55 ID:??? ワラタ http://medaka.5ch.io/test/read.cgi/php/1013725517/52
53: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/53
54: 名無しさん@お腹いっぱい。 [sage] 02/02/18 23:57 ID:??? >>51 自分の板でやれよ、カマ http://medaka.5ch.io/test/read.cgi/php/1013725517/54
55: 弐ch編者 ◆ZAdjmi0s [] 02/02/18 23:59 ID:hYF5tvk1 とりあえず前提知識、環境整備はこれをよんでください http://www.megabbs.com/perl.txt 去年の4月に漏れが書いてたものです。 いまとなってはちと不備が見つかるのですが、まぁ修正するのはめんどし たいしたことではないのでそのままで。 http://medaka.5ch.io/test/read.cgi/php/1013725517/55
56: 名無しさん@お腹いっぱい。 [=] 02/02/19 00:02 ID:??? >>54 姫の悪口言うんなら死んでもらうぜ低脳w http://medaka.5ch.io/test/read.cgi/php/1013725517/56
57: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:09 ID:??? >55 不備の修正を面倒がるのにperl講座するの? http://medaka.5ch.io/test/read.cgi/php/1013725517/57
58: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 00:11 ID:NO37p/Zc じゃーまずはお決まりのHello World!でも ##ここから print "Hello World!\n"; ##ここまで 簡単ですね。 printは print FILEHANDLE list; という書式で、listをFILEHANDLEに書き出すという機能を持っています。 FILEHANDLEは省略すると'STDOUT' listは省略すると$_になります。 この場合 FILEHANDLEは省略されているため print "Hello World!\n";は print STDOUT "Hello World!\n"; と同意ということになります。 STDOUTとはCGIでいうところのブラウザー、コマンドプロンプト上でいうところでの画面(モニター)ということになります。 listの部分にはlist(配列)というだけあって (あたりまえだが)配列で指定でき print "Hello ","world!","\n"; なんてことができます。 http://medaka.5ch.io/test/read.cgi/php/1013725517/58
59: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:13 ID:??? はーい!じゃあSTDINは何を指すんですか〜! と、>>58の実力を探るべく生徒役に徹するテスト。 http://medaka.5ch.io/test/read.cgi/php/1013725517/59
60: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 00:17 ID:NO37p/Zc えーちなみに 文字列を""で囲むと「変数」や「エスケープシーケンス」の解釈がおこなわれて、展開されます。 よって\nを改行として出力したい場合は""で囲むことになります。 単に\nとして表示したい場合は''を使います。 こちらは「変数」、「エスケープシーケンス」の展開が行われません。 >>59 STDINとは標準入力で、 CGIでいうところのPOSTやGETリクエストにおける httpヘッダーの後の空行の後の部分で コマンドプロンプト上でいうところのキーボード入力になります。 http://medaka.5ch.io/test/read.cgi/php/1013725517/60
61: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 00:20 ID:NO37p/Zc とりあえず今日はここまで。。。 ではでは http://medaka.5ch.io/test/read.cgi/php/1013725517/61
62: 名無しさん@お腹いっぱい。 [`] 02/02/19 00:21 ID:??? STDOUT=Standard Out STDIN=Standard In http://medaka.5ch.io/test/read.cgi/php/1013725517/62
63: 名無しさん@お腹いっぱい。 [”] 02/02/19 00:22 ID:??? print STDOUT "姫一発ヤラセロハァハァw\n" http://medaka.5ch.io/test/read.cgi/php/1013725517/63
64: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:22 ID:??? >>60 >GETリクエストにおけるhttpヘッダーの後の空行の後の部分で 例えばCONTENT-TYPE: text/html\n\n以下の通常HTMLソースと呼ばれる部分のことで良いんだよね。先生。 %a.pl < a.txt > b.txt おいおい、STDOUTは画面でSTDINはキーボード入力だけじゃないのかよ。と不良学生に豹変するテスト。 http://medaka.5ch.io/test/read.cgi/php/1013725517/64
65: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 00:27 ID:NO37p/Zc >>64 >例えばCONTENT-TYPE: text/html\n\n以下の通常HTMLソースと呼ばれる部分のことで良いんだよね。先生。 んーとそれはレスポンス部分だよね? リクエストのボディの部分がSTDINになるんだよ。 %a.pl < a.txt > b.txt えと、まぁ確かに画面ではないんだけど 本来画面に出力されるものを他のファイル(など)にリダイレクトしてる、、、 んだとおもう。 いや詳しいところは知らないや((≡´Д`≡)) スマソ http://medaka.5ch.io/test/read.cgi/php/1013725517/65
66: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/66
67: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 00:28 ID:NO37p/Zc ま、とりあえず今日のところはでかけまーす。 明日の今ぐらいの時間にまた質問(いじめ質問含)にでも答えながらすすめていきまーす。 http://medaka.5ch.io/test/read.cgi/php/1013725517/67
68: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/68
69: 名無しさん@お腹いっぱい。 [~] 02/02/19 00:30 ID:??? >>67 でかけまーす。 ホンダのストリームでかね?w http://medaka.5ch.io/test/read.cgi/php/1013725517/69
70: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:30 ID:??? >>67 とっとと帰れ! ケツ掘ったろか http://medaka.5ch.io/test/read.cgi/php/1013725517/70
71: 名無しさん@お腹いっぱい。 [=] 02/02/19 00:31 ID:??? >>70 すまんな低脳、それは俺の仕事だw http://medaka.5ch.io/test/read.cgi/php/1013725517/71
72: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:36 ID:??? >>65 HTTPリクエストって\n\nが終端記号で後には何も続かないと思ってたよ。アタシの宿題にしようっと。 標準出力とは「データを渡されることができる何か」です。 実体はそのときの状態によって異なります。 例えば、STDOUTが画面に割り当てられている場合(デフォルトのことが多い)は文字列を表示。 プリンタなら文字列を印刷。 ファイルならそのファイルに出力内容を保存。 ロボットの手を割り当てればprintfでロボットの手を制御できたりも。 STDINも同じ概念。 入力元はキーボードだったりファイルだったり温度センサーだったりします。 http://medaka.5ch.io/test/read.cgi/php/1013725517/72
73: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:38 ID:??? おおー、マトモにやってくれそうな予感ー。 期待してるよー http://medaka.5ch.io/test/read.cgi/php/1013725517/73
74: 名無しさん@お腹いっぱい。 [sage] 02/02/19 00:52 ID:??? > 60 > 単に\nとして表示したい場合は''を使います。 > こちらは「変数」、「エスケープシーケンス」の展開が行われません。 > シングルクウォート内にある ¥¥ および ¥’はどうなんだYO! http://medaka.5ch.io/test/read.cgi/php/1013725517/74
75: 名無しさん@お腹いっぱい。 [sage] 02/02/19 01:01 ID:??? >>74 ¥'はともかく\\ってエスケープされるの? けどそれ、屁理屈レベルだぞ・・・。 http://medaka.5ch.io/test/read.cgi/php/1013725517/75
76: 名無しさん@お腹いっぱい。 [sage] 02/02/19 01:14 ID:??? > 75 そんなの次を実行してみればわかるだRO! これを屁理屈レベルといってうやむやに する人には所詮プログラミングなんて無理無理! $a= '\\'; $b= '\\\\'; print "\$a=$a: \$b=$b\n"; http://medaka.5ch.io/test/read.cgi/php/1013725517/76
77: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 01:42 ID:NO37p/Zc >>72 STDIN、STDOUTの件は了解。 漏れの認識不足でした。 HTTPリクエストの件は googleで見つけたここらへんを参照 http://docs.iplanet.com/docs/manuals/enterprise/41/ja/ag/esaphttp.htm#1004513 RFCとかを見たほうが確実なんだろうけど 日本語みつかんなかったんで断念。。。もちっとさがせばあるかも。 >>74-76 ここらへんは明日あたりに持ち越しー。 またもや漏れの認識不足があたかも、、、 はぁ、、、だめだな、、、 http://medaka.5ch.io/test/read.cgi/php/1013725517/77
78: 名無しさん@お腹いっぱい。 [sage] 02/02/19 01:47 ID:??? もっと底辺でもわかる講座きぼんぬヽ(´ー`)ノ http://medaka.5ch.io/test/read.cgi/php/1013725517/78
79: 名無しさん@お腹いっぱい。 [~~] 02/02/19 01:59 ID:??? >>77 姫、phpなんて勉強するヒマがあったら 英語勉強しな。 RFC読め http://medaka.5ch.io/test/read.cgi/php/1013725517/79
80: 弐ch編者 ◆ZAdjmi0s [] 02/02/19 02:11 ID:NO37p/Zc ''とエスケープシーケンスの話、明日にもちこそーかとおもったけど 安らかに眠れそうになさそうなんでちと調べました。 えー、シングルクォーテーションの中で唯一解釈されるエスケープシーケンスとして 「\\」と「\'」 があるようです。 後者はクォーテーション自身をあらわすためにあり 前者はエスケープに使われる\記号をあらわすためです。 てかんじですかねー。 >>79 phpやってないし(笑 >英語勉強しな。 たしかにねー。。。英語のドキュメント読めないのはちと痛いよなー。。。 勉強したいが。。。 http://medaka.5ch.io/test/read.cgi/php/1013725517/80
81: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/81
82: 名無しさん@お腹いっぱい。 [・] 02/02/19 20:03 ID:??? >>80 なぁに、まずは勉強さ。 Give me your anal virginity. http://medaka.5ch.io/test/read.cgi/php/1013725517/82
83: 名無しさん@お腹いっぱい。 [\] 02/02/19 20:08 ID:??? http://isweb37.infoseek.co.jp/sports/genpuku/lobby.txt 姫、 ネタと断っているとはいえ、 元服の野郎がこんなことを書いていたぜ。 懲罰しようか?w http://medaka.5ch.io/test/read.cgi/php/1013725517/83
84: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/84
85: けんすう ◆al2rSalQ [sage] 02/02/19 23:20 ID:??? がんばれ(´ー`)y-~~ http://medaka.5ch.io/test/read.cgi/php/1013725517/85
86: 名無しさん@お腹いっぱい。 [mage] 02/02/20 00:35 ID:??? >>85 かねてから弐編へのラブコールをくりかえし、 ホモ疑惑があがっていたミルクカフェの管理人けんすうに、 ホモ確定判決が下った。 同被告人は、これ以外にも弐編姫萌えレスを2chやmegabbsで繰り返しており、 当然の判決だ、との声が高い。 http://lemmingdead.mine.nu/cgi-bin/megabbs/readres.cgi?bo=kensuu&vi=1002867854155 YIPPIEE!! 2001/12/04(Tue) 01:06 つーか、けんすうの分際で ユメボタンの会合で女子高校生と茶をシバいてるぢゃねーかw 罰として腕立て伏せ200回+ヴァカ駄精神病院全棟全階永久便所掃除の刑なw 160 YIPPIEE!! 2001/12/06(Thu) 03:18 >>155 ただの女子高生じゃない。スタアの恋に出てるアイドル。 164 けんすう 2001/12/06(Thu) 11:51 >160 かわいかった、、、 173 YIPPIEE!! 2001/12/09(Sun) 10:02 >>164 <160>弐編姫とどっちが可愛かったんだ?(マラ 174 けんすう 2001/12/10(Mon) 01:24 >>173 あーーーーーー!微妙。 これ、マジ?(汗 http://medaka.5ch.io/test/read.cgi/php/1013725517/86
87: 名無しさん@お腹いっぱい。 [ ] 02/02/20 00:46 ID:??? / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | オカマ に ホモ か | そら目出てえな!! ∧ ∧ |/\_________ (,,゚Д゚)____. (つ/~ ※ ※ \ /※ ※ ※ ※ \ ~~~~~~~~~~~~~~~~~~~ http://medaka.5ch.io/test/read.cgi/php/1013725517/87
88: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/88
89: >>88 [sage] 02/02/20 01:53 ID:??? なんか笑える http://medaka.5ch.io/test/read.cgi/php/1013725517/89
90: 名無しさん@お腹いっぱい。 [::] 02/02/20 02:24 ID:??? 電網海の弐編姫 予告編 第壱話 うそっ、君、オトコなのか?? 時は2002年。 俺は渋谷で3人の男女に追われていた とある美少女とぶつかり、 ある青い宝石を手に入れる。 それが全ての物語の始まりだったのだ。 http://medaka.5ch.io/test/read.cgi/php/1013725517/90
91: 名無しさん@お腹いっぱい。 [sage] 02/02/20 12:43 ID:??? 気持ちはわかるが、ちゃんとやろうとしてる人を邪魔するのは 単なる荒らしだぞ。 とか書くと今まで弐編が〜」とか言い出すやつが出てきそうだけど。 http://medaka.5ch.io/test/read.cgi/php/1013725517/91
92: 名無しさん@お腹いっぱい。 [] 02/02/20 14:22 ID:G1Z6CIrZ _/二二) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ / / / \ | 弐編の家臣でござる。 iーΥー―i ( | このスレはメガビ領民一同の i!!!!!!!!!!!!iii( > < 唯一の楽しみでござる。 _ |!!!!!!!!!/ヽ/_ | 何卒、荒らしはご容赦くだされ。 \  ̄ ̄ ̄ ̄ ̄ ̄ ̄ / \_______________ \;;;;;;;;;◎;;;;;;;;;;;;;;; / \ / | / ノ \ http://medaka.5ch.io/test/read.cgi/php/1013725517/92
93: 名無しさん@お腹いっぱい。 [ ] 02/02/20 14:48 ID:??? / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! | >>91-92 巣窟に帰れ! ∧ ∧ |/\_________ (,,゚Д゚)____. (つ/~ ※ ※ \ /※ ※ ※ ※ \ ~~~~~~~~~~~~~~~~~~~ http://medaka.5ch.io/test/read.cgi/php/1013725517/93
94: 名無しさん@お腹いっぱい。 [sage] 02/02/20 15:22 ID:??? ΛΛガバッ! / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ (;゚Д゚)ミ < コタツギコを荒らしに使うなゴルァ! ⊆ ̄ιノυ 〇 \____________________ http://medaka.5ch.io/test/read.cgi/php/1013725517/94
95: 名無しさん@お腹いっぱい。 [::] 02/02/20 23:18 ID:??? 姫ゴメン、 愛してるぜw ハァハァw http://medaka.5ch.io/test/read.cgi/php/1013725517/95
96: age ◆/ykUbYQ2 [age] 02/02/22 10:04 ID:??? age http://medaka.5ch.io/test/read.cgi/php/1013725517/96
97: あぼーん [あぼーん] あぼーん http://medaka.5ch.io/test/read.cgi/php/1013725517/97
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 134 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.333s*