【待望】PerlユーザのためのPHP入門 (601レス)
上下前次1-新
456: 454 03/10/08 00:30 ID:??? AAS
>>455
詳細なレスありがとうございます。
試しにpreg_replaceを使った時えらく文字化けしたのでなんでだろと疑問だったんですがこれで解決しました。
一応マルチバイト文字列関数用にphp.iniの設定は書き変えてあるので、
mb_ereg_replaceを使っても将来的に問題ないということならこれでいこうかなと思います。
457: 03/10/18 23:15 ID:??? AAS
配列をpackする時ってどうすんの?
他にも$a,$b,@c,$d,…と並べて@cの内容が展開されるようにしたい時とか.
458: 03/10/27 17:51 ID:??? AAS
既出かもしれませんが、
外部リンク[htm]:www.din.or.jp
をPHPにコーディングしなおしたサイトを誰かしりません?
無いかなー。
459(1): 03/10/28 18:22 ID:??? AAS
$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()で正規表現が使えないようなのですが
何か良い方法はないですか。
460: 03/10/29 23:14 ID:dIX7j6Ca(1) AAS
perlだと、csvファイルに対してSQL文を投げられる、SQL.pmっていうのがあるんですが、
phpでそういうモジュールってないでしょうか?
(いやぁ、ほんとはDB使いたいんですけどね。。。わけあってつかえず)
461: 03/11/01 14:03 ID:5TPcc+Om(1) AAS
連休中にphp勉強したいぞーage
462: 03/11/01 14:49 ID:??? AAS
>>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でいけるよね
463(2): 03/11/03 00:41 ID:4CVQMxAy(1) AAS
perlでいうところの、
print qq|
$hoge
<hr>
<a href="外部リンク:www.yahoo.com"></a>
|;
みたいの、phpでないでしょうか?
要は、変数展開もされて、”もエスケープする必要がないように書きたいのですが・・・
464: 03/11/03 00:44 ID:??? AAS
$a =~ tr/[a-z][A-Z]/[A-Z][a-z]/;
なんか無駄がないか?
465(1): 03/11/04 00:00 ID:??? AAS
>>463
ヒアドキュメントじゃだめですか?
466(2): 03/11/07 15:11 ID:GoKF/NUR(1) AAS
$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...なら可能なのですが…
467(1): 03/11/07 15:40 ID:??? AAS
>>466
それを実行すると1〜3のどれを$aに入れても$bが"three"になっちゃう
各分岐のお尻にbreak;付けましょうね
switch($a) {
case "1" : $b = "one"; break;
case "2" : $b = "two"; break;
case "3" : $b = "three"; break;
}
468(1): 03/11/07 15:43 ID:??? AAS
>>466
よく嫁
外部リンク[php]:www.php.net
469: 03/11/07 15:59 ID:??? AAS
>>467-468
ありがとう。自分、厨すぎました。
470: 463 03/11/12 04:51 ID:FrBzA+Qu(1) AAS
>>465
ありがとうございます。
そういえば、php4からヒアドキュメント使えるようになったんですよね。
(php3の知識はあっても、4の知識はあまりないもんで)
ヒアドキュメントで逝ってみます。
ただ、print qq|ほげー|;の手軽さが、なれてしまって、ラクなんですけどね。。。
ともかく、ありがとうございました。
471(1): 03/11/12 05:09 ID:??? AAS
my $xやvar xみたいな変数の宣言をする方法はないのでしょうか?
472: 03/11/12 06:00 ID:??? AAS
>>471
↓このへんわかりやすいんちゃう?
外部リンク[php]:itbtech.itboost.co.jp
<引用>
PHP の変数は宣言がありません。
また、明示的に型の指定をしてやる必要もありません。
この辺は Perl と同じです。
必要に応じてキャスト(相当のこと)を行うことはできます。
</引用>
473(2): 03/11/12 17:05 ID:??? AAS
Perlで$a |= "default a";
という書き方を多用していたのですが、
PHPでは$a = !isset($a) ? "default a" : $a;
でよろしいのでしょうか?
474(1): 03/11/12 20:14 ID:??? AAS
$a ||= "default a";
なら、
$a || ($a = "default a");
$a or $a = "default a";
とか。
$a |= "default a";
はそのままで通る。
(perl/PHP共に期待したものではないと思うけど)
475(1): 473 03/11/12 21:19 ID:??? AAS
>>474
すみません、先ほどは$a ||= "default a";
のことを言っておりました。
で、$a || ($a = "default a");
ですと、$aが未定義の場合、undefined errorが出てしまいます。
(当方error_reporting = ALLにしています)
上下前次1-新書関写板覧索設栞歴
あと 126 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s