探検


【待望】PerlユーザのためのPHP入門

1俺様
垢版 |
03/02/27 15:17ID:tJsRCtRD
見事Perl→PHPへの脱皮に成功した俺様が
両者の違いを中心に講義してやる。
今までPerlマンセーだったやつはこれを機にPHPに変更しよう也。
質問もガンガン書いてくれ。
このPerlの文はPHPだとどう書くの?とか。
348bloom
垢版 |
03/04/27 12:29ID:3nPIuagT
http://homepage.mac.com/ayaya16/
03/04/27 17:54ID:???
http://www.atmarkit.co.jp/flinux/special/php5/php5a.html
もうひとふんばりっ!
350nobodyさん
垢版 |
03/04/28 22:57ID:3GKx/vUL
イスラエルとか言われると萎える
351nobodyさん
垢版 |
03/05/05 22:17ID:LIOD5Ueh
mb_convert_encodingが使えないサーバの場合は?
352nobodyさん
垢版 |
03/05/05 22:25ID:???
jcode.php
353nobodyさん
垢版 |
03/05/19 23:33ID:cX3VPQ/6
教えてください。
perlで言うところのwarnなんですが、
print error_log($test);
見たいな形でerrorログに$testの値を出そうと思ったのですがうまくいきませんでした。。
どなたかperlでいうところのwarn関数のPHP版を教えてください。
354nobodyさん
垢版 |
03/05/20 01:11ID:???
>>353
よくわかんないけど trigger_error とか?
355あぼーん
垢版 |
NGNG
あぼーん
356nobodyさん
垢版 |
03/05/20 02:27ID:???
まぁ、胸張れるような場所でもないしな。
357nobodyさん
垢版 |
03/05/20 07:45ID:???
その発言しているサイトがある
インターネット全体からどれだけの犯罪者を出しているんだろうね…

2chから情報を得ておきながら悪口言う人間もいることだし
放置しても平気でしょ
358nobodyさん
垢版 |
03/05/20 10:19ID:???
日本人だって
殺人とかの罪犯す奴いるじゃないか

そしたら外国人は
日本人はみんな犯罪者だと思うのか?
359山崎渉
垢版 |
03/05/22 01:59ID:???
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
360nobodyさん
垢版 |
03/05/22 12:59ID:???
open( LOCK, ">./lock/count.lock" );# ロック用のファイルを作る(※1)
flock( LOCK, 2 );# ファイルをロックする
open( COUNT, "./log/count.log" );# カウンターの値が入ったファイルを開く
$count = <COUNT>;# カウンター値を読み出す
close( COUNT );# カウンターファイルを閉じる
$count++;# カウンターを+1する
open( CTEMP, ">./log/count2.log" );# 更新したカウンタの値を別のファイルに一時的に書き出す(※2)
print CTEMP $count;
$ezcount = "";#カウントファイルの数字を絵文字に変換
for ($i = length($count) - 1; $i >= 0; $i --) {
$n = int(substr($count, $i, 1));
if ($n == 0) {
$ezcount = "<img localsrc=\"325\">" . $ezcount;
} else {
$ezcount = "<img localsrc=\"".(179+$n)."\">".$ezcount;
}
}
close( CTEMP );# 一時的に書き出したファイルを閉じる(書き込み完了)
rename( "./log/count2.log", "./log/count.log" );# 一時的に書き出したファイルを本来のファイル名にリネーム
unlink( "./lock/count.lock" );
flock( LOCK, 8 );
close( LOCK );
これをPHPにしたいのですが…だれかお願いします!
361nobodyさん
垢版 |
03/05/22 13:52ID:???
>>360
マルチおよび自分でやろうともしない。放置
362nobodyさん
垢版 |
03/05/25 01:54ID:YbAXJXvg
formから$_POST["name"]で値を受け取ったのですが、
値中の「"」と「'」がエスケープされてしまって、「\」がついています。
これは自分で取り除くしかないのでしょうか?
363nobodyさん
垢版 |
03/05/25 02:04ID:???
>>362
php.iniのmagic_なんちゃらを、off 詳細は誰かおながい
364nobodyさん
垢版 |
03/05/25 02:05ID:???
>>363
ありがと、やってみる
365362
垢版 |
03/05/25 02:32ID:???
>>363
ローカルで出来なかったので、レンタル鯖にスクリプト設置して実験したら
やっぱり同じ現象がおこりました。・゚・(ノД`)・゚・。
自分で取り除いてみます…お騒がせしました
366nobodyさん
垢版 |
03/05/25 02:38ID:???
>>362
StripSlashes
367山崎渉
垢版 |
03/05/28 17:06ID:???
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
368
垢版 |
03/05/30 22:54ID:Ey+u4zPh
ヒアドキュメントを使うと
print <<<EOF
<タグ>$a<タグ2>
EOF;
の<タグ2>が表示されないのって、どうすりゃいいの???
369イ奄様
垢版 |
03/06/02 11:34ID:EOTygtgq
>>368
print <<<EOF
<タグ>${a}<タグ2>
EOF;
370
垢版 |
03/06/02 23:18ID:9zPzvWqa
THANK!!!
371nobodyさん
垢版 |
03/06/04 00:53ID:1Jdo0O1g
jcode.phpでEUC半角カタカナをSJIS全角カタカナにしていのだが。
372nobodyさん
垢版 |
03/06/04 01:12ID:wjzhyKBb
http://homepage3.nifty.com/coco-nut/
・_・y━””
373age
垢版 |
03/06/08 17:42ID:cXeOp+rQ
age
374_
垢版 |
03/06/08 17:44ID:???
http://kame.kakiko.com/hiroyuki/hankaku_b01.html
375 
垢版 |
03/06/08 18:09ID:eRunpr9i
過去ログからのコピーです。http://natto.2ch.net/mass/kako/974/974478132.html

489 名前: 文責:名無しさん 投稿日: 2001/04/11(水) 17:25
 一般人なのに盗聴される、じゃなくて、「一般人だから盗聴される」んじゃないのかな?
 基本的にネタ集めのためにやってんなら、有名人のネタを盗むと、有名人は告発できるし、
そんなことされても当たり前だと思われるので告発しても信じてもらえる。
 そうでない人は、ここの途中の書き込みにもあったように「電波」扱いされるだけ。

 ただで、ネタを仕入れるんなら、一般人に限るでしょう。
 マスコミは自分らの無能さを恥じてほしいです。

 ちなみに私が盗聴されはじめたのは、芸能人にストーカーされ始めてからでした。
 そこからマスコミに広がって行った。
 だから余計「妄想」とか思われそう。
 友人に話したら完全に病気扱いされた。ストーカーって言葉がない時代だったしね。
 書いておいておいた小説のネタが、他人の原作でドラマ化されたときにはきれまくっ
たなあ。(一度や二度のことじゃないけど)
376age
垢版 |
03/06/13 23:55ID:nW6iX8p9
a
377nobodyさん
垢版 |
03/06/14 01:09ID:Zt1p4X90
>>371
http://www.php.net/manual/ja/function.mb-convert-kana.php
378無料動画直リン
垢版 |
03/06/14 01:10ID:K+P5CDjB
http://homepage.mac.com/norika27/
379nobodyさん
垢版 |
03/06/15 21:40ID:???
>362
http://jp.php.net/manual/ja/function.stripslashes.php
これじゃだめかい?
380nobodyさん
垢版 |
03/06/19 03:00ID:yyOItGJy
381nobodyさん
垢版 |
03/06/19 19:42ID:???
HTMLとPHPコードを分離したいんだけど、
何か方法ありますか?perlでいうとこの
HTML::Template みたいなのとか。
382nobodyさん
垢版 |
03/06/20 00:47ID:???
>>381
【PHP】Smarty【Template】
http://pc2.2ch.net/test/read.cgi/php/1047225437/
383381
垢版 |
03/06/20 01:29ID:???
>>382
thx!
384nobodyさん
垢版 |
03/07/03 21:53ID:???
perlのdefinedみたいな奴
変数の定義がされているかどうかの
チェックはどうやったらいいですか?

385384
垢版 |
03/07/05 12:49ID:???
同名関数ありますた。スマソ
386nobodyさん
垢版 |
03/07/05 13:00ID:???
でも定数のみですた。
もうだめぽ ..
387nobodyさん
垢版 |
03/07/05 13:14ID:???
isset ですた。
388山崎 渉
垢版 |
03/07/15 11:11ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
389nobodyさん
垢版 |
03/07/23 10:22ID:A887jOLI
PerlからPHPに入るとPHPで簡単にできることを
Perlっぽく遠回りに書いてしまうことってないですか?
逆も然り
そーゆー注意点とか教えて下さい。
390nobodyさん
垢版 |
03/07/23 13:26ID:???
Perl癖を取るためにもPHPに限らず
他の言語に興味を持つといいと思います。
391nobodyさん
垢版 |
03/07/24 01:46ID:???
もうそろそろPHPにも手を出してみるかと思ってたが、
このスレ見たらやる気なくした。やっぱC/C++にするわ。

まず第一に<?〜?>にコード書くなんて本当にキモいよ。
(JSPやASPも同じようなもんだがな)

PHPってCGI/Perlの速度に我慢できなくなった奴が、C/C++はできないから
しょうがなく使ってるんだろ?
プロはJavaとかASP使うし、素人はPerlで十分(環境も整ってる)。
速度ががまんならないならC/C++、もしくはモジュール資産を活かして
mod-perlだな。

PHPの選択はまずありえないね。
392nobodyさん
垢版 |
03/07/24 10:31ID:???
ASP使ってる時点でOutだと思うがね。
とりあえず海外見てきたら?
393nobodyさん
垢版 |
03/07/25 12:40ID:???
範囲演算子".."がないのが激しくムカツクんだが。
394_
垢版 |
03/07/25 13:14ID:???
http://homepage.mac.com/hiroyuki44/hankaku08.html
395nobodyさん
垢版 |
03/07/25 13:21ID:???
http://www.adultshoping.com/addclickport.cgi?pid=1058922748
●無料でパソコンだけで月に10万円↑稼げます!
登録完全無料!お小遣いが沢山稼げちゃいます。
月に平均10万円ほど稼げます。頑張ればもっと!
夏休みを有効に利用しましょう!
無料だから登録しないと損します〜。
396nobodyさん
垢版 |
03/07/25 13:31ID:???
>>391
珍獣みっけ。
何のためのプログラムしてるのか知りたい。
397nobodyさん
垢版 |
03/07/25 14:02ID:???
↑趣味に効率は全く必要ないそうです
398nobodyさん
垢版 |
03/07/25 22:24ID:???
>>391
おもろい
399nobodyさん
垢版 |
03/07/26 02:18ID:???
改行コードCRLFで保存したファイルを
配列で1行づつ配列で取り出して保存したいんですが、
何故かPHPだと改行コード(CRCR...LF)と増え続けます。
改行コードの仕様の問題なんっすかねぇ?

# Perl
open( IN , "hoge.dat" );
@lines = <IN>;
close( IN );
#何か処理
open( OUT , ">hoge.dat" );
print OUT @lines;
close( OUT );

// PHP
$lines = file( "hoge.dat" );
// 何か処理
$fp = fopen( "hoge.dat" , "w" );
foreach( $lines as $line ){
 fputs( $fp, $line );
}
fclose( $fp );
400nobodyさん
垢版 |
03/07/26 02:50ID:???
>>399
CRが付くって事は環境はWindows?
perlでいうbinmode($fp)ていう関数ないかね?

http://flex.ee.uec.ac.jp/texi/perl/perl_76.html#IDX157
401nobodyさん
垢版 |
03/07/26 03:36ID:???
>>400
バイナリモードで開く"wb"(WINのみ)
$fp = fopen( "hoge.dat" , "wb" );
とすると一応解決しますね。サンクスです。
根本的な解決になってるのかどうか微妙っす。
402nobodyさん
垢版 |
03/07/26 04:30ID:???
>>401
テキストモードで開くと
fputs などの出力処理中に \n が見つかった際に
内部で \r\n に置き換えるという小さな親切を行ってくれます

バイナリモードならそれをやらないので解決だと思われまする
403402
垢版 |
03/07/26 04:33ID:???
うーん、でも読み込む際も CRLF⇒LF 変換やってくれたような?
まあいいや。たぶん大丈夫。
404nobodyさん
垢版 |
03/07/26 16:31ID:???
>内部で \r\n に置き換えるという小さな親切を行ってくれます
なるほそ。小さな親切ですね・・・
405nobodyさん
垢版 |
03/07/28 20:34ID:MPvwsvte
perlで、書き込み処理を終えたあとに他のページに飛ばすとき、
print "Location:./santa.cgi?$no\n\n";
exit;
などとしていましたが、phpでこれと同等なのはどういうコマンドでしょうか?
コマンド名だけでも良いので助言お願いします。
406nobodyさん
垢版 |
03/07/28 20:42ID:???
>>405
マニュアルのHTTP関連の関数を見るべし。
407nobodyさん
垢版 |
03/07/29 00:10ID:???
header("location: ./santa.php?no");
でどうでしょう。
408nobodyさん
垢版 |
03/07/29 00:53ID:???
locationは絶対パスで指定しなよ…
409nobodyさん
垢版 |
03/07/29 01:11ID:???
どっちでも同じでしょ。
相対だと不都合でるブラウザってあるの?
410nobodyさん
垢版 |
03/07/29 01:19ID:???
あるよ。
携帯とか。
411nobodyさん
垢版 |
03/07/29 01:59ID:???
どこの携帯?
412_
垢版 |
03/07/29 02:02ID:???
http://homepage.mac.com/hiroyuki44/
413nobodyさん
垢版 |
03/07/29 04:06ID:???
>>409
RFC嫁
414nobodyさん
垢版 |
03/07/29 08:58ID:???
>>411
ドコモ
415nobodyさん
垢版 |
03/07/31 09:22ID:???
○ index.html
× ./index.html
ってのが前あった。
416山崎 渉
垢版 |
03/08/02 02:23ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
03/08/02 04:51ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
418nobodyさん
垢版 |
03/08/03 03:36ID:e6CW3yAE
良スレ
あげとく
419nobodyさん
垢版 |
03/08/15 21:51ID:/UWm9DVh
PHPユーザーのためのPerl入門だれか立ってってくれ!
420山崎 渉
垢版 |
03/08/15 22:25ID:???
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
421nobodyさん
垢版 |
03/08/28 08:28ID:aKTRoIJT
PHPでOOPでもと思い、

Perl
use lib './lib/';
use Hoge;

PHP
define( 'LIB_DIR', './lib/' );
include( LIB_DIR . 'Hoge.class.php' );

とやってるんだけど、もうちっと短く書きたいなぁ。
422nobodyさん
垢版 |
03/08/30 22:41ID:AS3I0NRv
Perlやってた奴が、PHPを勉強するのにいい本って何?
PerlでいうところのプログラミングPerlみたいな
大御所のこれさえ買っとけばたいてい載ってるって本きぼん。
423nobodyさん
垢版 |
03/08/30 23:14ID:AIvW/87l

大人の時間ドットNET
http://2ch.otona-no-jikan.net

424nobodyさん
垢版 |
03/08/31 13:22ID:AiCjBA+L
>>422
赤マンモス
425nobodyさん
垢版 |
03/09/07 01:36ID:???
HTML::Template, DBI に替わるものがPHP覚える気になるんだけど。
プログラム中にHTML書いてあったら落ち着かない
426nobodyさん
垢版 |
03/09/07 01:56ID:1pDZ49hH
427nobodyさん
垢版 |
03/09/10 00:04ID:EKqTJkq7
検索について教えて下さい。
perlで検索で、$find_lineの中に、$f_a_wordが含まれているかを
if (index($find_line,$f_a_word) >= 0) {
 含まれている
} else {
 含まれていない
}
このようにしていたのですが、phpだとどのようになりますか?
428427
垢版 |
03/09/10 00:42ID:???
427です。eregというので出来そうです。
失礼しました。
429nobodyさん
垢版 |
03/09/10 01:08ID:???
>>425
これじゃだめかな?
やってみてくりくり


<?php

$find_line = "これはテソトです。";
$f_a_word = "テソト";

if(strstr($find_line,$f_a_word)){
echo '$find_lineの中に$f_a_wordは含まれています!';
}
else{
echo '$find_lineの中に$f_a_wordは含まれていません!';
}

?>
430429です
垢版 |
03/09/10 01:20ID:z4dT6uSf
番号ずれてますたスマソ。
427-428宛のレスです。

OpenJaneって番号ズレるのね。。。
431 
垢版 |
03/09/10 04:03ID:???
strstr();ってi18n対応?
432nobodyさん
垢版 |
03/09/10 10:21ID:???
mb_strpos()とかじゃだめかい?
433nobodyさん
垢版 |
03/09/11 23:16ID:???
>>421
> PHPでOOPでもと思い、

インクルードパスの設定とOOPには何の関係もない。
‥‥‥というのはともかく、auto_prepend でググれ。
434nobodyさん
垢版 |
03/09/20 14:31ID:???
ここ、一昨日初めて来たんだけど良スレだね。
おかげで分からなかった事も分かりました。ありがd
435nobodyさん
垢版 |
03/09/20 22:34ID:VeIFc9WR
あるディレクトリの一覧をファイル名順でソートしたいと思います。
ただし、.や..や.htaccessといった、「.」で始まるファイルは対象外にしたいのです。

Perlで
---
opendir(DIR, $path);
@list = sort grep(!/^?./, readdir(DIR));
closedir(DIR);

と書くところを、phpではどのように表現すればよいのでしょうか?
436nobodyさん
垢版 |
03/09/20 23:19ID:???
>>391
ワロタ
03/09/21 03:57ID:???
>>435
自信ないが
$dh = opendir($path);
while ($tmp = readdir($dh)) $filename[] = $tmp;
$filename = preg_grep("/^[^\.]/", $filename);
sort($filename);
closedir($dh);
438nobodyさん
垢版 |
03/09/21 19:51ID:???
natsort は?
439nobodyさん
垢版 |
03/09/22 04:27ID:PmE0lLf0
>>437-438
なるほど。このコード実行してないんであれですが、
preg_grep する前に $filename[] = $tmp しちゃうと、
配列$filename内には「.」や「..」が残りそうな雰囲気が…違ったらごめん。
こんな感じにしてみました。
---
if( false !== ($handle = opendir($query_path)) ){ //ディレクトリが開けるなら
while( $file = readdir($handle) ){
if( preg_match ("/^?./", $file) ){
$files[] = $file;
}
}
closedir($handle);
if( count($files) >= 1 ){
sort($files);
}else{
print "このディレクトリ内に読めるファイルはありません?n";
}
}


つーかnatsortって便利ですな。
http://search.net-newbie.com/php/function.natsort.html
440 
垢版 |
03/09/22 05:52ID:???
>437のでOKでは。>439は正規表現が意味不明になってるよ。

正規表現が分からない時はこんなのもアリかな。

while ( $entry = readdir($dh ) {
  if ( substr($entry, 0, 1) != '.' )
    $files[] = $entry;
}

http://jp.php.net/substr
441 
垢版 |
03/09/22 06:08ID:???
ああ全角か。スマソ。
442nobodyさん
垢版 |
03/09/22 11:22ID:???
全角でもオレには意味不明なんだが・・・
443nobodyさん
垢版 |
03/09/22 16:10ID:???
分からなかったら聞きましょうね♪
444nobodyさん
垢版 |
03/09/22 16:36ID:???
>>443が一番意味不明だな
445nobodyさん
垢版 |
03/09/25 23:55ID:???
perlのflock関数だったらさんざん使ったことあるんですが、
perlの場合のflock関数と比較して、
phpのflock関数を使うときの注意点って、特になんか、ありますか?

(ウェブサーバは、Apacheという前提です)
446445
垢版 |
03/09/28 00:48ID:lxnHIT50
どなたかお答えくださいませ
447nobodyさん
垢版 |
03/09/28 02:01ID:???
lockはlock専用スレがありまっせ。
448nobodyさん
垢版 |
03/09/28 02:26ID:???
>>445
にたようなもんじゃないのかな?
たしか、PHPマニュアルにもflock関数は全ての環境で使えるもんじゃ
ないみたいなこと書いてあったし、
ネットワークファイルシステムに対応してないけりゃ、無理だろうし。
ちなみに、うぇぶさばは関係ないですぞ。
レスを投稿する


ニューススポーツなんでも実況