見事Perl→PHPへの脱皮に成功した俺様が
両者の違いを中心に講義してやる。
今までPerlマンセーだったやつはこれを機にPHPに変更しよう也。
質問もガンガン書いてくれ。
このPerlの文はPHPだとどう書くの?とか。
【待望】PerlユーザのためのPHP入門
1俺様
03/02/27 15:17ID:tJsRCtRD412_
03/07/29 02:02ID:???415nobodyさん
03/07/31 09:22ID:??? ○ index.html
× ./index.html
ってのが前あった。
× ./index.html
ってのが前あった。
416山崎 渉
03/08/02 02:23ID:??? ∧_∧
( ^^ )< ぬるぽ(^^)
( ^^ )< ぬるぽ(^^)
417ぼるじょあ ◆ySd1dMH5Gk
03/08/02 04:51ID:??? ∧_∧ ∧_∧
ピュ.ー ( ・3・) ( ^^ ) <これからも僕たちを応援して下さいね(^^)。
=〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
= ◎――――――◎ 山崎渉&ぼるじょあ
ピュ.ー ( ・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' );
とやってるんだけど、もうちっと短く書きたいなぁ。
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みたいな
大御所のこれさえ買っとけばたいてい載ってるって本きぼん。
PerlでいうところのプログラミングPerlみたいな
大御所のこれさえ買っとけばたいてい載ってるって本きぼん。
423nobodyさん
03/08/30 23:14ID:AIvW/87l424nobodyさん
03/08/31 13:22ID:AiCjBA+L >>422
赤マンモス
赤マンモス
425nobodyさん
03/09/07 01:36ID:??? HTML::Template, DBI に替わるものがPHP覚える気になるんだけど。
プログラム中にHTML書いてあったら落ち着かない
プログラム中に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だとどのようになりますか?
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は含まれていません!';
}
?>
これじゃだめかな?
やってみてくりくり
<?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って番号ズレるのね。。。
427-428宛のレスです。
OpenJaneって番号ズレるのね。。。
432nobodyさん
03/09/10 10:21ID:??? mb_strpos()とかじゃだめかい?
433nobodyさん
03/09/11 23:16ID:???434nobodyさん
03/09/20 14:31ID:??? ここ、一昨日初めて来たんだけど良スレだね。
おかげで分からなかった事も分かりました。ありがd
おかげで分からなかった事も分かりました。ありがd
435nobodyさん
03/09/20 22:34ID:VeIFc9WR あるディレクトリの一覧をファイル名順でソートしたいと思います。
ただし、.や..や.htaccessといった、「.」で始まるファイルは対象外にしたいのです。
Perlで
---
opendir(DIR, $path);
@list = sort grep(!/^?./, readdir(DIR));
closedir(DIR);
と書くところを、phpではどのように表現すればよいのでしょうか?
ただし、.や..や.htaccessといった、「.」で始まるファイルは対象外にしたいのです。
Perlで
---
opendir(DIR, $path);
@list = sort grep(!/^?./, readdir(DIR));
closedir(DIR);
と書くところを、phpではどのように表現すればよいのでしょうか?
437とおりすがり
03/09/21 03:57ID:??? >>435
自信ないが
$dh = opendir($path);
while ($tmp = readdir($dh)) $filename[] = $tmp;
$filename = preg_grep("/^[^\.]/", $filename);
sort($filename);
closedir($dh);
自信ないが
$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
なるほど。このコード実行してないんであれですが、
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
>437のでOKでは。>439は正規表現が意味不明になってるよ。
正規表現が分からない時はこんなのもアリかな。
while ( $entry = readdir($dh ) {
if ( substr($entry, 0, 1) != '.' )
$files[] = $entry;
}
http://jp.php.net/substr
正規表現が分からない時はこんなのもアリかな。
while ( $entry = readdir($dh ) {
if ( substr($entry, 0, 1) != '.' )
$files[] = $entry;
}
http://jp.php.net/substr
442nobodyさん
03/09/22 11:22ID:??? 全角でもオレには意味不明なんだが・・・
443nobodyさん
03/09/22 16:10ID:??? 分からなかったら聞きましょうね♪
445nobodyさん
03/09/25 23:55ID:??? perlのflock関数だったらさんざん使ったことあるんですが、
perlの場合のflock関数と比較して、
phpのflock関数を使うときの注意点って、特になんか、ありますか?
(ウェブサーバは、Apacheという前提です)
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関数は全ての環境で使えるもんじゃ
ないみたいなこと書いてあったし、
ネットワークファイルシステムに対応してないけりゃ、無理だろうし。
ちなみに、うぇぶさばは関係ないですぞ。
にたようなもんじゃないのかな?
たしか、PHPマニュアルにもflock関数は全ての環境で使えるもんじゃ
ないみたいなこと書いてあったし、
ネットワークファイルシステムに対応してないけりゃ、無理だろうし。
ちなみに、うぇぶさばは関係ないですぞ。
449445
03/09/28 03:46ID:??? >>447
ども。のぞいてきます。
>>448
そうですね。
よく考えりゃ、どっちもOSのflockを呼び出してるってことだから、
特段変わることはないか。。。
>ちなみに、うぇぶさばは関係ないですぞ。
いや、マニュアル
http://www.php.net/manual/ja/function.flock.php
に、
「いくつかのオーペレーティングシステムでflock() はプロセスレベルで実装されています。
ISAPIのようなマルチスレッド 型のサーバーAPIを使用している場合、
同じサーバーインスタンスの並 列スレッドで実行されている他のPHPスクリプトに対してファイルを保 護する際に
flock()を使用することはできません」
って書いてあったから、
ウェブサーバにIIS使ってると、事情が違うのかなと思って一応かいといたもんで。。。
(正直IIS分からんですが)
ども。のぞいてきます。
>>448
そうですね。
よく考えりゃ、どっちもOSのflockを呼び出してるってことだから、
特段変わることはないか。。。
>ちなみに、うぇぶさばは関係ないですぞ。
いや、マニュアル
http://www.php.net/manual/ja/function.flock.php
に、
「いくつかのオーペレーティングシステムでflock() はプロセスレベルで実装されています。
ISAPIのようなマルチスレッド 型のサーバーAPIを使用している場合、
同じサーバーインスタンスの並 列スレッドで実行されている他のPHPスクリプトに対してファイルを保 護する際に
flock()を使用することはできません」
って書いてあったから、
ウェブサーバにIIS使ってると、事情が違うのかなと思って一応かいといたもんで。。。
(正直IIS分からんですが)
450nobodyさん
03/09/28 09:23ID:??? ?
451445
03/09/28 22:34ID:jyRnC+If452nobodyさん
03/09/29 10:34ID:??? 通りがかりだが
あまり気にする事は無いかと
マルチスレッド型を利用している場合、別々に動作している
phpは同一プロセス(の、別スレッド)で動作している事になるので
プロセス単位で排他をかけるflock()は排他の目的には使えない
ということで、HTTPdとphpの組み合わせによる、というのは正しいかも
あまり気にする事は無いかと
マルチスレッド型を利用している場合、別々に動作している
phpは同一プロセス(の、別スレッド)で動作している事になるので
プロセス単位で排他をかけるflock()は排他の目的には使えない
ということで、HTTPdとphpの組み合わせによる、というのは正しいかも
453nobodyさん
03/10/07 22:48ID:??? 保守新党
454nobodyさん
03/10/07 23:44ID:??? $str =~ s/◆/◇/g;
みたいなマルチバイト文字列の置換をPHPでやるにはどうしたらいいんでしょうか。
mb_ereg_replaceはまだ実験段階らしいのであまり乗り気ではなく。
みたいなマルチバイト文字列の置換をPHPでやるにはどうしたらいいんでしょうか。
mb_ereg_replaceはまだ実験段階らしいのであまり乗り気ではなく。
455nobodyさん
03/10/08 00:11ID:??? >>454
str_replaceでも「とりあえずは」OK。
それか、文字列をUTF-8に変換してから
$str_utf8 = preg_replace("/pattern/u", "replace", $str_utf8);
でもOK。
ただしmb_ereg_replaceはライブラリのライセンス絡みでもめてたけど
関数自体は十分実用に耐えるよ。
ライブラリの変更はPHP5で行われ、ユーザレベルでの変更は
不要になる方向らしいから気にすることは無いと思うけど。
ちなみにmb_ereg系を使うときはmb_languageとmb_internal_encodingを
ちゃんと設定していないと駄目。
str_replaceでも「とりあえずは」OK。
それか、文字列をUTF-8に変換してから
$str_utf8 = preg_replace("/pattern/u", "replace", $str_utf8);
でもOK。
ただしmb_ereg_replaceはライブラリのライセンス絡みでもめてたけど
関数自体は十分実用に耐えるよ。
ライブラリの変更はPHP5で行われ、ユーザレベルでの変更は
不要になる方向らしいから気にすることは無いと思うけど。
ちなみにmb_ereg系を使うときはmb_languageとmb_internal_encodingを
ちゃんと設定していないと駄目。
456454
03/10/08 00:30ID:??? >>455
詳細なレスありがとうございます。
試しにpreg_replaceを使った時えらく文字化けしたのでなんでだろと疑問だったんですがこれで解決しました。
一応マルチバイト文字列関数用にphp.iniの設定は書き変えてあるので、
mb_ereg_replaceを使っても将来的に問題ないということならこれでいこうかなと思います。
詳細なレスありがとうございます。
試しにpreg_replaceを使った時えらく文字化けしたのでなんでだろと疑問だったんですがこれで解決しました。
一応マルチバイト文字列関数用にphp.iniの設定は書き変えてあるので、
mb_ereg_replaceを使っても将来的に問題ないということならこれでいこうかなと思います。
457nobodyさん
03/10/18 23:15ID:??? 配列をpackする時ってどうすんの?
他にも$a,$b,@c,$d,…と並べて@cの内容が展開されるようにしたい時とか.
他にも$a,$b,@c,$d,…と並べて@cの内容が展開されるようにしたい時とか.
458nobodyさん
03/10/27 17:51ID:???459nobodyさん
03/10/28 18:22ID:??? $a="abcdABCD";
$a =~ tr/[a-z][A-Z]/[A-Z][a-z]/;
print "content-type:text/html\n\n";
print "$a";
上のコードをPHPに移植し、
$a="abcdABCD";
$a=strtr($a, "[a-z][A-Z]", "[A-Z][a-z]" );
echo $a;
と書いてみたところ、strtr()で正規表現が使えないようなのですが
何か良い方法はないですか。
$a =~ tr/[a-z][A-Z]/[A-Z][a-z]/;
print "content-type:text/html\n\n";
print "$a";
上のコードをPHPに移植し、
$a="abcdABCD";
$a=strtr($a, "[a-z][A-Z]", "[A-Z][a-z]" );
echo $a;
と書いてみたところ、strtr()で正規表現が使えないようなのですが
何か良い方法はないですか。
460nobodyさん
03/10/29 23:14ID:dIX7j6Ca perlだと、csvファイルに対してSQL文を投げられる、SQL.pmっていうのがあるんですが、
phpでそういうモジュールってないでしょうか?
(いやぁ、ほんとはDB使いたいんですけどね。。。わけあってつかえず)
phpでそういうモジュールってないでしょうか?
(いやぁ、ほんとはDB使いたいんですけどね。。。わけあってつかえず)
461nobodyさん
03/11/01 14:03ID:5TPcc+Om 連休中にphp勉強したいぞーage
462nobodyさん
03/11/01 14:49ID:??? >>459
泥臭いけど・・
$a = 'abcdABCD';
$from = implode('',array_merge(range('a','z'),range('A','Z')));
$to = implode('',array_merge(range('A',Z'),range('a','z')));
echo strtr($a,$from,$to);
rangeを使って配列をつくってarray_mergeで配列合体させて
implode(perlでいうところのjoin)で文字列にして置換ってかんじ
連続する文字コードならrangeでいけるよね
泥臭いけど・・
$a = 'abcdABCD';
$from = implode('',array_merge(range('a','z'),range('A','Z')));
$to = implode('',array_merge(range('A',Z'),range('a','z')));
echo strtr($a,$from,$to);
rangeを使って配列をつくってarray_mergeで配列合体させて
implode(perlでいうところのjoin)で文字列にして置換ってかんじ
連続する文字コードならrangeでいけるよね
463nobodyさん
03/11/03 00:41ID:4CVQMxAy perlでいうところの、
print qq|
$hoge
<hr>
<a href="http://www.yahoo.com"></a>
|;
みたいの、phpでないでしょうか?
要は、変数展開もされて、”もエスケープする必要がないように書きたいのですが・・・
print qq|
$hoge
<hr>
<a href="http://www.yahoo.com"></a>
|;
みたいの、phpでないでしょうか?
要は、変数展開もされて、”もエスケープする必要がないように書きたいのですが・・・
464nobodyさん
03/11/03 00:44ID:??? $a =~ tr/[a-z][A-Z]/[A-Z][a-z]/;
なんか無駄がないか?
なんか無駄がないか?
466nobodyさん
03/11/07 15:11ID:GoKF/NUR $a = 2;
switch($a) {
case "1" : global $b = "one";
case "2" : global $b = "two";
case "3" : global $b = "three";
}
echo $a." -> ".$b;
みたいなことをやりたいのですが、switch文では無理ですか?
if,elseif...なら可能なのですが…
switch($a) {
case "1" : global $b = "one";
case "2" : global $b = "two";
case "3" : global $b = "three";
}
echo $a." -> ".$b;
みたいなことをやりたいのですが、switch文では無理ですか?
if,elseif...なら可能なのですが…
467nobodyさん
03/11/07 15:40ID:??? >>466
それを実行すると1〜3のどれを$aに入れても$bが"three"になっちゃう
各分岐のお尻にbreak;付けましょうね
switch($a) {
case "1" : $b = "one"; break;
case "2" : $b = "two"; break;
case "3" : $b = "three"; break;
}
それを実行すると1〜3のどれを$aに入れても$bが"three"になっちゃう
各分岐のお尻にbreak;付けましょうね
switch($a) {
case "1" : $b = "one"; break;
case "2" : $b = "two"; break;
case "3" : $b = "three"; break;
}
468nobodyさん
03/11/07 15:43ID:???470463
03/11/12 04:51ID:FrBzA+Qu >>465
ありがとうございます。
そういえば、php4からヒアドキュメント使えるようになったんですよね。
(php3の知識はあっても、4の知識はあまりないもんで)
ヒアドキュメントで逝ってみます。
ただ、print qq|ほげー|;の手軽さが、なれてしまって、ラクなんですけどね。。。
ともかく、ありがとうございました。
ありがとうございます。
そういえば、php4からヒアドキュメント使えるようになったんですよね。
(php3の知識はあっても、4の知識はあまりないもんで)
ヒアドキュメントで逝ってみます。
ただ、print qq|ほげー|;の手軽さが、なれてしまって、ラクなんですけどね。。。
ともかく、ありがとうございました。
471nobodyさん
03/11/12 05:09ID:??? my $xやvar xみたいな変数の宣言をする方法はないのでしょうか?
472nobodyさん
03/11/12 06:00ID:??? >>471
↓このへんわかりやすいんちゃう?
http://itbtech.itboost.co.jp/php/php_01.php
<引用>
PHP の変数は宣言がありません。
また、明示的に型の指定をしてやる必要もありません。
この辺は Perl と同じです。
必要に応じてキャスト(相当のこと)を行うことはできます。
</引用>
↓このへんわかりやすいんちゃう?
http://itbtech.itboost.co.jp/php/php_01.php
<引用>
PHP の変数は宣言がありません。
また、明示的に型の指定をしてやる必要もありません。
この辺は Perl と同じです。
必要に応じてキャスト(相当のこと)を行うことはできます。
</引用>
473nobodyさん
03/11/12 17:05ID:??? Perlで$a |= "default a";
という書き方を多用していたのですが、
PHPでは$a = !isset($a) ? "default a" : $a;
でよろしいのでしょうか?
という書き方を多用していたのですが、
PHPでは$a = !isset($a) ? "default a" : $a;
でよろしいのでしょうか?
474nobodyさん
03/11/12 20:14ID:??? $a ||= "default a";
なら、
$a || ($a = "default a");
$a or $a = "default a";
とか。
$a |= "default a";
はそのままで通る。
(perl/PHP共に期待したものではないと思うけど)
なら、
$a || ($a = "default a");
$a or $a = "default a";
とか。
$a |= "default a";
はそのままで通る。
(perl/PHP共に期待したものではないと思うけど)
475473
03/11/12 21:19ID:??? >>474
すみません、先ほどは$a ||= "default a";
のことを言っておりました。
で、$a || ($a = "default a");
ですと、$aが未定義の場合、undefined errorが出てしまいます。
(当方error_reporting = ALLにしています)
すみません、先ほどは$a ||= "default a";
のことを言っておりました。
で、$a || ($a = "default a");
ですと、$aが未定義の場合、undefined errorが出てしまいます。
(当方error_reporting = ALLにしています)
476nobodyさん
03/11/12 21:56ID:??? >>475
isset($a) || ($a = "default a");
これでどう?
厳密にはこうだろうけど、
(isset($a) && $a) || ($a = "default a");
長すぎ。
# PHP的には、先にデフォルトを設定するものだと思ってた。
# PHPのエロイ人plz。
isset($a) || ($a = "default a");
これでどう?
厳密にはこうだろうけど、
(isset($a) && $a) || ($a = "default a");
長すぎ。
# PHP的には、先にデフォルトを設定するものだと思ってた。
# PHPのエロイ人plz。
477473
03/11/12 22:08ID:??? > isset($a) || ($a = "default a");
これなら問題なく実行できました。この書き方が一番スマートそうですね。
これなら問題なく実行できました。この書き方が一番スマートそうですね。
478nobodyさん
03/11/12 22:08ID:??? GETのパラメータ区切りに&じゃなく;を使うにはどうしたらよいのでしょうか?
479nobodyさん
03/11/12 22:34ID:??? >>478
php.iniの設定変更
arg_separator.input = ";&"
しか思いつかない。
Perlと関係なければ、
【PHP】質問スレッド Part11
http://pc2.2ch.net/test/read.cgi/php/1067635640/l50
こちらへどぞ。
php.iniの設定変更
arg_separator.input = ";&"
しか思いつかない。
Perlと関係なければ、
【PHP】質問スレッド Part11
http://pc2.2ch.net/test/read.cgi/php/1067635640/l50
こちらへどぞ。
480nobodyさん
03/11/26 02:30ID:??? 俺様帰ってこないかな
別に用は無いんだけど
別に用は無いんだけど
483nobodyさん
03/12/12 01:34ID:??? http://www.cs.wcupa.edu/~rkline/perl2php/
484nobodyさん
03/12/14 00:06ID:??? ソケット通信をする際、相手方のIPアドレスがわかっている場合、
fsockopenの第一引数にIPアドレスを入れれば、
内部的に名前の解決をしなくて済むのでしょうか?
fsockopenの第一引数にIPアドレスを入れれば、
内部的に名前の解決をしなくて済むのでしょうか?
485nobodyさん
03/12/14 21:20ID:??? >>484 ttp://jp.php.net/fsockopen
IP address がすでにわかってるのに名前の解決?
Ip address => name なら、そもそも必要ない。
fsockopen関数の内部で、PHPが名前え解決するかどうかとういう話であれば、
inet_aton が失敗すれば(第一引数のhostが IP address を表す文字列でない場合)、
名前の解決(gethostbyname)がされる様です。
IP address がすでにわかってるのに名前の解決?
Ip address => name なら、そもそも必要ない。
fsockopen関数の内部で、PHPが名前え解決するかどうかとういう話であれば、
inet_aton が失敗すれば(第一引数のhostが IP address を表す文字列でない場合)、
名前の解決(gethostbyname)がされる様です。
486nobodyさん
03/12/14 23:41ID:??? >>485
>fsockopen関数の内部で、PHPが名前え解決するかどうかとういう話であれば、
>inet_aton が失敗すれば(第一引数のhostが IP address を表す文字列でない場合)、
>名前の解決(gethostbyname)がされる様です。
なるほど、ありがとうございます。
大変参考になりました。
>fsockopen関数の内部で、PHPが名前え解決するかどうかとういう話であれば、
>inet_aton が失敗すれば(第一引数のhostが IP address を表す文字列でない場合)、
>名前の解決(gethostbyname)がされる様です。
なるほど、ありがとうございます。
大変参考になりました。
487486
03/12/17 00:08ID:??? IPアドレスでfsockopenと、リモホでfsockopenとで、
処理にかかる時間を比べたんですが、
前者の方が多少遅い結果になりました。
perlの場合とはやはり違うのでしょうか…?
処理にかかる時間を比べたんですが、
前者の方が多少遅い結果になりました。
perlの場合とはやはり違うのでしょうか…?
488nobodyさん
03/12/18 13:37ID:SDZbq9mq perlでいうtr/a-zA-Z//c(a-zA-z以外にマッチして置き換える)
っていうのはPHPではどう書けば良いでしょうか?(´・ω・`)?モニュ
小一時間探したけど見つかりませんでした
っていうのはPHPではどう書けば良いでしょうか?(´・ω・`)?モニュ
小一時間探したけど見つかりませんでした
489nobodyさん
03/12/18 13:59ID:SDZbq9mq やりたいことは、リストに含まない文字が
検出されたらエラーを表示させる事です。
perlだと
if(($_ =~ tr/a-zA-Z0-9//c) {
die 'リストに含まれない文字が検出されたYO!';
}
な感じでそれをPHPでやりたいです。
検出されたらエラーを表示させる事です。
perlだと
if(($_ =~ tr/a-zA-Z0-9//c) {
die 'リストに含まれない文字が検出されたYO!';
}
な感じでそれをPHPでやりたいです。
490nobodyさん
03/12/18 15:25ID:??? 【PHP】質問スレッド Part12
http://pc2.2ch.net/test/read.cgi/php/1070639208/
http://pc2.2ch.net/test/read.cgi/php/1070639208/
491nobodyさん
03/12/18 16:46ID:??? >487
どうせろくでもないベンチスクリプトだろ
>488
既出
>789
!
どうせろくでもないベンチスクリプトだろ
>488
既出
>789
!
492nobodyさん
03/12/18 20:33ID:??? >>489
$str = ...
if (ereg("[^a-zA-Z0-9]", $str)){
die('リストに含まれない文字が検出されたYO!');
}
多分"[^[:alnum:]]"でも。
$str = ...
if (ereg("[^a-zA-Z0-9]", $str)){
die('リストに含まれない文字が検出されたYO!');
}
多分"[^[:alnum:]]"でも。
493nobodyさん
03/12/18 20:37ID:??? そういうことじゃないと思う。
494nobodyさん
03/12/21 18:56ID:16zntf/g >492
ぇ?ネタですか?(´・ω・`)?モニュ
-zA-Z0-9にマッチでエラー表示
じゃないでつ。文字列中に例えば
記号が入ってたらエラーにする処理でつ。
ぇ?ネタですか?(´・ω・`)?モニュ
-zA-Z0-9にマッチでエラー表示
じゃないでつ。文字列中に例えば
記号が入ってたらエラーにする処理でつ。
495nobodyさん
03/12/21 20:52ID:??? ネタ?
491のでええやん。elseでもいいし。
491のでええやん。elseでもいいし。
497nobodyさん
03/12/22 17:55ID:??? asdf
498nobodyさん
03/12/22 19:05ID:??? ghjk
499nobodyさん
03/12/23 11:09ID:hM9+gLxR >496
ぉぉやってみたら確かにマッチした。さんくすこ。
PHPだと’^’って反転する意味なのですか・・・?
なんか小さな幸せを発見したw
ぉぉやってみたら確かにマッチした。さんくすこ。
PHPだと’^’って反転する意味なのですか・・・?
なんか小さな幸せを発見したw
500nobodyさん
03/12/23 11:15ID:hM9+gLxRぁぁぼけてすまそ。。。
文字クラスの反転記号ですね。記憶から全く遠のいていますた。
(PHPの独自拡張なのかとさえ思ってしまったw)
もう一度勉強し直し逝ってきま _| ̄|○
501nobodyさん
04/01/19 18:13ID:??? >>481
で、どのへんまでできた?
なぜかおれも作るハメになってしまって、
BNFで定義しきれないPerlを無理やりBNFレベルで定義中なんだけど。
そこまでPerl詳しくねーんで困ってる。
parrotのライブラリにPerl6のパーサーやってるっぽいんだが、、むずい。
だれか、なんちゃってPerl BNF定義した人おらんですか。。
で、どのへんまでできた?
なぜかおれも作るハメになってしまって、
BNFで定義しきれないPerlを無理やりBNFレベルで定義中なんだけど。
そこまでPerl詳しくねーんで困ってる。
parrotのライブラリにPerl6のパーサーやってるっぽいんだが、、むずい。
だれか、なんちゃってPerl BNF定義した人おらんですか。。
502501
04/01/19 18:23ID:??? ガク
コンテンツか。。ツールじゃないのね。。シツレイ
コンテンツか。。ツールじゃないのね。。シツレイ
503nobodyさん
04/01/23 00:02ID:Zt/PsL2C 質問君です。すいません。
idはadmin、passは111111だったとして、
test.php?id=admin&pass=111111と入力します。
test.php内で
idとpassの値を受け取るには、$id=param[id]でしたっけ?
idはadmin、passは111111だったとして、
test.php?id=admin&pass=111111と入力します。
test.php内で
idとpassの値を受け取るには、$id=param[id]でしたっけ?
504nobodyさん
04/01/23 00:24ID:Zt/PsL2C extract($_GET);
$_GET["id"];
$_GET["pass"];
$_GET["id"];
$_GET["pass"];
506nobodyさん
04/01/23 01:03ID:Zt/PsL2C >>505
ここ読みました。
http://php.s3.to/off.txt
これも対策済まれている方が多いことですが、
Warning: REG_EBRACK in
eregi関数で文字比較するとき、全角の「ー」の2バイト目が半角では“[”になるのが原因らしい・・
簡単な解決方法ありますでしょうか?
ここ読みました。
http://php.s3.to/off.txt
これも対策済まれている方が多いことですが、
Warning: REG_EBRACK in
eregi関数で文字比較するとき、全角の「ー」の2バイト目が半角では“[”になるのが原因らしい・・
簡単な解決方法ありますでしょうか?
507俺様
04/01/23 01:17ID:??? >>501-502
いや、俺もツール考えてみたんだわ。
PHPなら文法定義しているの発見したんだけど
Perlは見つからないんだよね。。。
perly.yにあるyacc文法も読んだんだけど
文法以前に字句解析どうしようって感じで。
いや、俺もツール考えてみたんだわ。
PHPなら文法定義しているの発見したんだけど
Perlは見つからないんだよね。。。
perly.yにあるyacc文法も読んだんだけど
文法以前に字句解析どうしようって感じで。
508nobodyさん
04/01/23 02:04ID:??? >>506
extract() するなら、$_GETでアクセスする必要ないかと…
register_globals=off がデフォになったのは、
未初期化の変数が汚染されたりとか
セキュリティ面の問題が利便性より重要だったからではないのかなぁ
なので、extract()するならその配列の安全チェックをしてからのほうが良いかと。
extract() するなら、$_GETでアクセスする必要ないかと…
register_globals=off がデフォになったのは、
未初期化の変数が汚染されたりとか
セキュリティ面の問題が利便性より重要だったからではないのかなぁ
なので、extract()するならその配列の安全チェックをしてからのほうが良いかと。
509nobodyさん
04/01/23 02:08ID:??? >>506後半
内部エンコーディングをEUCかUnicodeにする。
入力変換をautoにする。
これで、内部では、EUCかUnicodeになるので、その手の問題に遭遇しない。
海外製ソフトでSJISはいいことがない。
内部エンコーディングをEUCかUnicodeにする。
入力変換をautoにする。
これで、内部では、EUCかUnicodeになるので、その手の問題に遭遇しない。
海外製ソフトでSJISはいいことがない。
510nobodyさん
04/01/23 02:13ID:??? 入力変換はHttpInputだけなので、ファイルを読むときなどはMb_かjcode.phpで
内部エンコードにそろえてやる必要があると思います。
内部エンコードにそろえてやる必要があると思います。
511nobodyさん
04/01/23 23:10ID:???list()でログファイル(5MB程度)を参照して検索などを作るとき、
fopen()
flock()
Fclose()
しなくてもログファイルの破損などは起こらないでしょうか?
書き込み中はロックしてますが、list()中はロックしないとします。
レスを投稿する
ニュース
- 【サッカーW杯】絶体絶命の韓国、決勝T進出に暗雲 クロアチア先制…敗退シナリオの可能性高まる [鉄チーズ烏★]
- 【サッカー】「昔のネイマールでしょ」サッカー日本代表・塩貝健人がブラジル戦へ痛快発言…「王国」の印象を問われ ★2 [鉄チーズ烏★]
- 【自維】鮭おにぎり198円に絶望、コンビニすら遠い存在に…「生き延びられない」物価高で広がる生活苦★6 [ひぃぃ★]
- イチロー氏、野球と比べてサッカーが「うらやましい」と語る 「チームのためにという感じが」「野球は個人で成績を出さないとボロカス」 [冬月記者★]
- 【サッカー】日本代表、ブラジル戦でアウェーユニホーム着用へ… FIFAが公式発表 爆売れの白デザイン、W杯で初お披露目! [冬月記者★]
- 中居正広、“気心の知れた仲間とゴルフを再開” 周囲に漏らす「仲間だけで集まれる店でも出したいな」最近はサッカーW杯にも夢中に ★2 [Ailuropoda melanoleuca★]