Perlコーディング初心者質問スレ Part 63
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/09/09(金) 18:11:49.71ID:???【投稿する際の注意】
質問するときは内容をよく吟味してから投稿してください。
「コマンドの意味がわかんない」とかはマニュアル見ましょう。
回答者さんは何でも屋じゃありません。
1: 自分はこういう事がしたい。
2: それでこんな風にやってみたが・・・
3: こんなエラーが出て上手く行かなかった。
最低でも1と3が無いと誰も答えられないよ。
良い回答は良い質問から。一緒に勉強しましょう。
お勧めサイトは >>2 以降
前スレ http://hibari.2ch.net/test/read.cgi/php/1295170172/
0759nobodyさん
2012/05/10(木) 12:40:25.73ID:???use utf8;
print encode("MIME-Header", "ぬるぽ");
# =?UTF-8?B?44Gs44KL44G9?=
0760nobodyさん
2012/05/10(木) 14:41:15.55ID:???と自分で確認せずに質問する私
0761758-759
2012/05/10(木) 16:43:05.99ID:???ごめんなさい、use Encode;ないと無理ですね_| ̄|○ il||li
ちなみに>>758はuse utf8;不要、>>759は要use utf8;です
0762nobodyさん
2012/05/10(木) 23:52:03.09ID:???0763nobodyさん
2012/05/11(金) 00:48:08.10ID:???0764nobodyさん
2012/05/11(金) 01:08:31.24ID:???encode() に渡されるのはフラグの立った utf8
まずは日本語の扱いをもっと学習した方が良いかも
0765nobodyさん
2012/05/11(金) 01:11:10.98ID:???0766nobodyさん
2012/05/11(金) 01:12:05.76ID:???0767nobodyさん
2012/05/11(金) 01:14:41.05ID:???>>765
こうですか?
あなたが何を言いたいのかさっぱりわかりませんw
0768nobodyさん
2012/05/11(金) 01:24:19.42ID:???0769nobodyさん
2012/05/11(金) 16:29:39.44ID:???CGIなんですけど
open(LOG, ">>/opt/lampp/test/LOG");
とか、
if(!open(LOG, ">>LOG")) {
…
とかでログファイルをopenしています。
二つのファイルとも、パーミッションは
-rw-r--r-- で同じなんですけど、
下の方で開けたログファイルは、後から同じ上書きopenで開けず
エラーになります。まぁ手動で下のファイルだけ、
-rw-rw-rw- とかに変えればいいんですけど。めんどくさいので
いい方法ありませんか?っていうか何が原因ですか?
よろしくお願いします。
0770nobodyさん
2012/05/11(金) 17:02:14.89ID:???openは3引数で使う、グロブじゃなくて変数を使うってところか
0771nobodyさん
2012/05/11(金) 18:35:09.50ID:???0772nobodyさん
2012/05/12(土) 14:16:24.41ID:???if ($in{'mail'} eq "hoge@hoge.com"){
処理〜
}
これじゃダメなんですか?
0773nobodyさん
2012/05/12(土) 14:21:07.43ID:???メールアドレスの所をしんぐるくぉーてーしょんに変えるがいい
if ($in{'mail'} eq 'hoge@hoge.com'){
0775nobodyさん
2012/05/12(土) 15:45:18.56ID:???0776nobodyさん
2012/05/12(土) 16:02:35.92ID:???ダブルクォーテーション内では変数は展開されるから、
メールアドレスの「@hoge」が配列として扱われて展開されちゃうから
シングルクォーテーションを使って変数が展開されないようにするか、
もしくは「\」でエスケープして "hoge\@hoge.com" のように書く
と覚えておいた方がええんでは
0777nobodyさん
2012/05/14(月) 11:15:17.47ID:???0778nobodyさん
2012/05/14(月) 11:59:37.23ID:???"@foo" が展開される罠は他の言語にはないけどさ
0779nobodyさん
2012/05/23(水) 17:27:24.18ID:rf0/+ult0780nobodyさん
2012/05/23(水) 17:28:38.79ID:rf0/+ult0781nobodyさん
2012/05/23(水) 17:32:33.00ID:rf0/+ult0782nobodyさん
2012/05/23(水) 18:59:49.41ID:rf0/+ult0783nobodyさん
2012/05/23(水) 19:32:41.29ID:???0784nobodyさん
2012/05/23(水) 20:09:04.03ID:???0788nobodyさん
2012/05/24(木) 09:35:27.46ID:???0789nobodyさん
2012/05/24(木) 19:30:42.39ID:???0790nobodyさん
2012/05/24(木) 19:42:26.19ID:???0791nobodyさん
2012/05/25(金) 00:00:56.26ID:???0792nobodyさん
2012/05/25(金) 04:32:23.39ID:???0793nobodyさん
2012/05/25(金) 06:43:20.05ID:???0794nobodyさん
2012/05/25(金) 08:58:48.21ID:???特定の用法でなら、使い道ってあるんかな。
例えばCとかなら、使いにくい仕様でも、使い勝手を犠牲にして低レベルな処理にしたとか、
低レベルだからこそPGが直に弄れるメリットも無くはないってのが想像出来るんだけど。
0796nobodyさん
2012/05/25(金) 19:34:09.54ID:???0797nobodyさん
2012/05/25(金) 20:31:46.80ID:???0798nobodyさん
2012/05/25(金) 20:47:50.48ID:???0799nobodyさん
2012/06/07(木) 23:29:12.95ID:???EPICとpadwalkerで環境構築してデバッガを動かしてみたのですが、値で文字化けが起きていて困っています。
eclipse.iniには-Dfile.encoding=utf-8を追記して構文検証が動くのは確認してます。
環境のバージョンは下記の通りになります。
eclipse:3.7.2
epic:0.5.46
activeperl:5.14.2
padwalker:1.93
以上、よろしくお願いします。
0800nobodyさん
2012/06/10(日) 21:57:43.97ID:???配布されているcgiってstrictやwarnings使ってないやつも結構あるんだが
やっぱりローカルで十分テストしたら外しておいた方がいいの?
それとも単に局所化も考えていないだけの駄コードなだけ?
2
実行ファイルだけじゃなくてライブラリにもstrict,warningsって記述しないと意味無い?
だとすると上で書いたように実際に運用する時外した方がいいとするといちいち全部外さなきゃいけないの?
3
諸設定を分離して別ファイルでグローバル変数として定義してると
実行ファイルなどで「1回しか出てこねーぞ」と怒られてしまいます
どんな回避方法がベストですか
どうせsjisへのconvertしか使わないから不要な部分カットしたjcode.plが一番よくねと思って
jcode.plを見たら思った以上に解読難しかった(´・ω・`)
0801nobodyさん
2012/06/10(日) 22:23:30.29ID:???2. no が使えるプラグマは、ほぼレキシカルスコープ。
no strict ; no warnings
ライブラリだろうと、スコープから外れたら効力は無い。
3. Exporter 使って export すれば?
0802nobodyさん
2012/06/10(日) 22:26:24.92ID:???0803nobodyさん
2012/06/10(日) 23:19:34.11ID:???0804nobodyさん
2012/06/10(日) 23:58:10.87ID:???まあ、そういう経験ない人に言っても伝わらんだろうけど。
0805nobodyさん
2012/06/11(月) 00:29:11.97ID:???0807nobodyさん
2012/06/11(月) 04:49:40.79ID:???命令 or die
これまとめて書きたかったらどう書くの?
命令 if 条件 or die とかでオッケー?
0808nobodyさん
2012/06/11(月) 06:00:31.52ID:???時と場合によっては、括弧で括って演算子の実行順位が変更されないように。
0809nobodyさん
2012/06/11(月) 21:39:23.02ID:???% corelist strict
strict was first released with perl 5
% corelist warnings
warnings was first released with perl v5.6.0
5.6 未満の鯖を使ってる人なら辛うじて「使えない」と
言えるかも知れんけどねw
804 みたいな意見は、 KENT あたりの強弁を鵜呑みに
してるとしか思えんよ。
0810nobodyさん
2012/06/11(月) 23:39:17.35ID:???0811nobodyさん
2012/06/12(火) 01:06:42.34ID:???0812nobodyさん
2012/06/12(火) 05:17:36.52ID:???use strict に至っては、1993 年実装だぞ。
0813nobodyさん
2012/06/12(火) 06:08:24.36ID:???strictも使えないサーバは見たことないな。
0814nobodyさん
2012/06/13(水) 01:58:11.19ID:???0815813
2012/06/13(水) 02:04:10.58ID:???0816nobodyさん
2012/06/13(水) 03:15:49.57ID:???自分で自分の首を絞めてるだけに見えるな。
一応リリース日書いておくわ。あなたはいったい何年前のマシンを使ってるんですか?
Perl 1.0 1987年12月18日
Perl 2.0 1988年6月05日
Perl 3.0 1989年10月18日
Perl 4.0 1991年3月21日
Perl 5.0 1994年10月17日
Perl 5.5.0 1998年7月22日
Perl 5.6.0 2000年5月22日 warnings導入
Perl 5.8.0 2002年7月18日 Unicode正式対応
Perl 5.10.0 2007年12月18日
Perl 5.12.0 2010年4月13日
Perl 5.14.0 2011年5月14日
Perl 5.16.0 2012年5月20日
0817nobodyさん
2012/06/13(水) 04:35:00.28ID:???0818nobodyさん
2012/06/13(水) 05:00:19.82ID:???提案は出来るだろ。
0819nobodyさん
2012/06/13(水) 06:39:10.27ID:???(開発用のモジュールはリリース時には滅多に必要にならないんだから)
use strict; -wスイッチは切りましょう
(トラブったら、その時ONにしてデバックすれば良い)。
ってお作法の名残りだろ。本来の意味でのバッドノウハウ(?)
で、アホが行間の意味を考えず、 warningsに置き換えただけ。
perl5.6時代の当初は後方互換 = 環境依存と言う理由が後付けされたが、
それだったら、warningsを使わず -w使えばいいだけの話
0820nobodyさん
2012/06/13(水) 07:22:17.87ID:???社会に出たことないのか?
0821nobodyさん
2012/06/13(水) 12:32:37.23ID:???0822nobodyさん
2012/06/13(水) 16:02:50.21ID:???別環境の構築まで仕事として依頼されれば喜んでやるけどさ。
0823nobodyさん
2012/06/13(水) 19:16:09.34ID:???0824nobodyさん
2012/06/13(水) 19:39:09.52ID:???0825nobodyさん
2012/06/13(水) 22:33:10.23ID:???ありがたーいお客様ですねわかります
0826nobodyさん
2012/06/13(水) 22:37:18.89ID:???それを客のせいにするわけですねw
環境がー、環境がー、
0827nobodyさん
2012/06/13(水) 22:38:41.15ID:???新しい機能が使えないだけじゃなくて
バグがあるんだよ。
0828nobodyさん
2012/06/13(水) 22:39:19.57ID:???5系は甘え
0830nobodyさん
2012/06/13(水) 22:43:18.44ID:???一、CPANモジュールに頼るな。Perlに付属するモジュールだけを使え。
一、perldocに頼るな。Webにアクセスして検索もするな。本に書いてあることを全て記憶して臨め。
0831nobodyさん
2012/06/14(木) 08:20:28.86ID:???0833nobodyさん
2012/06/16(土) 23:40:53.22ID:???なんてないんだから。
0834nobodyさん
2012/06/17(日) 00:54:41.36ID:???0836nobodyさん
2012/06/17(日) 08:30:35.87ID:???お前らの生活を支える会社をもっと大切にしろ
0839nobodyさん
2012/06/17(日) 20:01:25.21ID:???0840nobodyさん
2012/06/18(月) 04:10:39.17ID:???0841nobodyさん
2012/06/18(月) 09:15:28.84ID:???5.005でも十分とわかりました。
5.6以降を使うのは甘えです。
CPANモジュールに頼るのも甘えです。
0842nobodyさん
2012/06/18(月) 10:21:41.00ID:???0843nobodyさん
2012/06/18(月) 12:13:55.57ID:???当人だけが満足しているだけじゃだめなんです。
周りの人間が5.6以降やCPANモジュールなどに依存したコードを書いて
他人に迷惑をかけることを防がなければなりません。
そのためにもルールは守っていただきます。
0844nobodyさん
2012/06/18(月) 13:21:15.86ID:???0845nobodyさん
2012/06/19(火) 06:28:15.00ID:???けど、もともと使ってない俺達には関係ない話なんだけどな
0846nobodyさん
2012/06/20(水) 00:33:54.27ID:???おまえさんのJcode好きには負けたよ...
おれは降りるから、ここ好きに使っていいよ。
(でも荒らすんじゃないぞ)
0847nobodyさん
2012/06/23(土) 20:26:58.26ID:???0848nobodyさん
2012/06/23(土) 21:29:02.36ID:???0849nobodyさん
2012/06/23(土) 23:12:30.52ID:???「ノウンバグは仕様」 という言葉をキミに授けよう
0850nobodyさん
2012/06/30(土) 16:43:21.68ID:???ttp://toro.2ch.net/test/read.cgi/tech/1336267272/791
> 質問と言うか助けてください
>
> http://.....hoge.cgi?hage=hige&mage=1,2,3
> 上記の引数付きのものをデバッガで実行するのって
> perl -d hoge.cgi hage=hige mage=1,2,3
> で合ってますか?
>
> また、この引数って何処から取れば良いのでしょうか?@ARGV?
>
> 何処にも入れた引数見つからなくて泣きそう…
0851nobodyさん
2012/06/30(土) 17:29:30.01ID:???その火をこっちに持ち込むんじゃねえよゴミ
質問者が持ち込むならまだしもお前が持ち込むとか意味不明
こっちまで荒らすつもり?
0852nobodyさん
2012/06/30(土) 17:32:55.61ID:???あっちから来たのバレバレですよ
>質問者が持ち込むならまだしも
そうだったらマルチポストガーって騒ぐんだろ?
0853nobodyさん
2012/06/30(土) 19:48:47.09ID:???あっちのスレ見たけどもう質問者がバカッターで教えてもらったって書いてあるじゃん
0854nobodyさん
2012/06/30(土) 20:46:14.07ID:???0857nobodyさん
2012/06/30(土) 23:00:50.01ID:???デバッガのことを知っているのに引数の取得の仕方を知らないのは、かなり
不自然なので、きっとみんなはネタだと思ってスルーしていますよ。
0858nobodyさん
2012/06/30(土) 23:37:05.04ID:???■ このスレッドは過去ログ倉庫に格納されています