【PHP】くだらねぇ質問はここに書き込みやがれpart8
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/08/08(月) 01:18:55ID:54u1h4+Dここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
0757nobodyさん
2005/08/28(日) 09:25:52ID:???どうしてもエラーが出てしまいます。
itemauc.cgi?mode=view&no=7777">題名</a></td>
だとすると題名のみ抽出したいのです。
ご教授お願いします。
<?php
$InputFile = "http://*********";
$Pattern = "/(itemauc.cgi?mode=view&no=.*">)(.*)(<\/a><\/td>)/";
$fp = fopen($InputFile, "r");
if ($fp == FALSE) {
echo "error";
exit();
}
while (!feof($fp)) {
$s = fgets($fp);
$n = preg_match_all($Pattern, $s, $ar, PREG_SET_ORDER);
for ($i = 0; $i < $n; $i++) print "・" . $ar[$i][2] . "<br />\n";
}
fclose($fp);
?>
0760757
2005/08/28(日) 09:50:13ID:???正規表現おかしいですか?
0761nobodyさん
2005/08/28(日) 10:18:09ID:???を
$Pattern = "/(itemauc.cgi?mode=view&no=.*\">)(.*)(<\/a><\/td>)/";
にしたらどう?
(「&no=.*">」の二重引用符をエスケープする「&no=.*\">」)
0762nobodyさん
2005/08/28(日) 10:23:36ID:???0765761
2005/08/28(日) 11:00:35ID:???おっしゃる意味わかりました。
>>757
$Pattern = "/(itemauc.cgi?mode=view&no=.*">)(.*)(<\/a><\/td>)/";
を
$Pattern = "/(itemauc.cgi\?mode=view&no=.*\">)(.*)(<\/a><\/td>)/";
にすると上手くいった。
「&no=.*">」の二重引用符と「.cgi?mode」の「?」をエスケープする。
「?」が正規表現で評価されたみたい。
0767nobodyさん
2005/08/28(日) 12:59:49ID:???0768nobodyさん
2005/08/28(日) 13:59:00ID:dDBq8KPQ変数かファイルに落としたいのですが、どんな関数をつかえばよいのでしょうか?
教えてくださいませ。
0769nobodyさん
2005/08/28(日) 14:09:13ID:???これだと抽出した文字全部表示されるようだけど指定できないかな?
1つ目とか・・・いろいろやってみたんだけど難しー
便乗で申し訳ないが誰か教えてださい。
0770nobodyさん
2005/08/28(日) 14:14:05ID:???これじゃだめ?
$url = "http://*********";
$out = "out.html";
system("wget $url -O $out");
0772nobodyさん
2005/08/28(日) 15:22:57ID:dDBq8KPQ>>771さん
早速のアドバイス、どうも有難うございます。
今は時間がないので、後ほど試してみます。
有難うございました。
0773769
2005/08/28(日) 17:02:12ID:???$InputFile = "http://*********";
$Pattern = "/(itemauc.cgi?mode=view&no=.*">)(.*)(<\/a><\/td>)/";
$fp = fopen($InputFile, "r");
if ($fp == FALSE) {
echo "error";
exit();
}
while (!feof($fp)) {
$s = fgets($fp);
$n = preg_match_all($Pattern, $s, $ar, PREG_SET_ORDER);
for ($i = 0; $i < $n; $i++) $aaa[$i] = $ar[$i][2];
}
print $aaa[1] . "<br>\n";
print $aaa[2] . "<br>\n";
print $aaa[3] . "<br>\n";
fclose($fp);
?>
757さんの改造してるんだけどうまくいかない。
指定したものだけ表示したいんですけど。
どこか間違ってるところありますか?
0774nobodyさん
2005/08/28(日) 18:00:10ID:Io8dHAYtヒントだけでもいいんで教えてください。
ISP規制中により携帯からなので
言葉足らずな点があるかもしれませんがよろしくお願いします。
0776nobodyさん
2005/08/28(日) 18:35:59ID:???自分で作ってるログなら、最後の行だけ別ファイルにキャッシュする
そうでなければ最初から1行づつ読んで最後の行だけ取り出す。
ログファイルが追加のみでどんどん大きくなるという前提なら
最後の行を取得する時にファイルポインタの位置を記録しておけば後の負担が減る。
ログ1行の長さがある程度わかる場合は、
fseekのSEEK_ENDを使って適当な位置から読む手もある。
乱暴なやり方だが。
0777773
2005/08/28(日) 22:26:33ID:???ご教授お願いします。
0779nobodyさん
2005/08/28(日) 22:50:54ID:???以下簡略したコードを示します。sub()内では$writeが1ではありませんでした。
index.phpで、main()のなかではなくfunctionの外でrequire('write_main.php');だと
sub()内でも1が表示されました。
そういうものなのでしょうか。この現象に気づくのに時間かかってしまった。
---index.php----
<HTML><BODY><PRE><?
function main(){
require('write_main.php');
}
main();
?></PRE></BODY></HTML>
---write_main.php---
<?
$write = true;
if($write){
require('write_sub.php');
} ?>
---write_sub.php---
<?
echo "[$write]\r\n"; // [1]が表示される。
function sub(){
global $write;
echo "[$write]\r\n"; // []が表示される。
}
sub(); ?>
0780nobodyさん
2005/08/28(日) 22:53:24ID:???> for ($i = 0; $i < $n; $i++) $aaa[$i] = $ar[$i][2];
この行も間違ってる。
この行の実行のされ方をよく考えろ。
0781nobodyさん
2005/08/28(日) 23:01:53ID:???function main(){
require('write_main.php');
}
は
function main(){
$write = true;
if($write){
require('write_sub.php');
}
}
こうなるわけで、
$writeはmain関数のスコープ内で扱われることになって、
globalではなくなるね。
動作としてはそんなもんじゃないかな。
0782nobodyさん
2005/08/28(日) 23:24:04ID:???ありがとうございます。
なるほど、判りました。
ということは、そうかPHPってfunctionの中にfunctionを入れられるのか。
function main()
{
function sub()
{
}
}
しらんかった。
0785nobodyさん
2005/08/29(月) 04:01:32ID:???if (phpversion() >= "4.1.0")書いたほうがいい?なくてもかまわない?
0786nobodyさん
2005/08/29(月) 06:50:29ID:???関数内でincludeすればグローバルスコープの名前空間が汚れにくくなる利点もあるわけだが。
ヒント:ケースバイケース
>>785
extract使わずに修正するのは無理な状況なの?
0787785
2005/08/29(月) 08:15:47ID:???レスさんくす。
最近PHPはじめたんだけど、なんこかの配布サイトのソース見ると、
if (phpversion() >= "4.1.0") {
extract($_POST);
}
って書いてあるのが結構あるのよね。
おまじないなのか、別に必要がないのか検索してもいまいちさっぱりで。
バージョンによってはこれをかかないとPOSTされたデータが入らないとかあるんだけど、互換?バージョンによってはエラーになったりするのかな?
0788777
2005/08/29(月) 08:24:37ID:???ループさせないほうがいいのでしょうか?
0789nobodyさん
2005/08/29(月) 08:27:33ID:???ttp://www.php.net/manual/ja/language.variables.predefined.php
$_POSTが使えるようになったのは4.1.0以降。(register_globalsのデフォルトがoffになったのは4.2.0以降。)
4.1.0以前は、$HTTP_POST_VARSを使うか、$POST変数名を使っていた。
0790nobodyさん
2005/08/29(月) 08:43:05ID:???PHP4.0以下でregister globalsがoffだと動かない
if (PHP_VERSION < "5.0.0") {
extract($HTTP_POST_VARS);
}
0791nobodyさん
2005/08/29(月) 09:03:22ID:???いい加減しつこい。
というか、そんな聞き方で答えてもらえる(答えられる)わけないだろ。
そもそも、ここに貼ったソースを見る限りだと、このスレの>>757からのレスすら読んでないみたいだし
0792nobodyさん
2005/08/29(月) 11:18:25ID:???取得したいと思い・・・mb_ereg_matchを使ってできると
思いきや、マニュアルには位置を返す記述がないので
できないのかなと思ってます。
全角数字が出てくる位置は
どのようにしたら取得できるのでしょうか?
0793nobodyさん
2005/08/29(月) 11:27:12ID:???0794nobodyさん
2005/08/29(月) 12:18:28ID:???0795nobodyさん
2005/08/29(月) 12:33:45ID:s5T6oqi1file()
でファイルを全部配列に読み込む。
んで、mb_ereg を使って全角文字があるかどうかをループで探していけば配列番号わかるでしょ。
配列位置=行目だから。
0798797
2005/08/29(月) 13:01:12ID:???0799nobodyさん
2005/08/29(月) 13:07:56ID:YewHBwdY通常ページは問題ないのですが、フレームページではフレーム内が
表示されません。
$val = file_get_contents("http://www.aa.com/index.html");
echo $val;
やら、
$fp = fopen("http://www.aa.com/index.html", "r");
while (!feof($fp)) {
echo fgets($fp, 1024);
}
fclose($fp);
やらを試しました。
宜しくご教授願います。
0800795
2005/08/29(月) 13:10:44ID:???だったら、さっきの配列で見つけた行にたいして
mb_strposやればいいんでねーの?
0801nobodyさん
2005/08/29(月) 13:21:29ID:???mb_strposを10個並べるか
1文字ずつローラ作戦を決行するしか
ないのですね。
0802nobodyさん
2005/08/29(月) 13:31:32ID:???0803nobodyさん
2005/08/29(月) 13:39:14ID:???表示されない原因は、<frame src>のURIが正しくないからなので、
そこを正しいURIに直してあげればいいですよ。
具体的なソースは面倒なのでパス。
0804nobodyさん
2005/08/29(月) 13:46:56ID:???preg_splitは全角が利かなかったので
mb_splitにして戻ってきた配列からの0要素の文字数をカウント
することにしました。
<thinks src='みんな'>ありがとう</thinks>
0806nobodyさん
2005/08/29(月) 13:55:02ID:bRBqfQsiFTPでバイナリ転送でダウンロードすると化けていないので、
アップロードはうまく言ってると思うのですが・・・
どこが間違っているのでしょうか?
PHPのバージョンは4.3.10、apacheを使っています。
よろしくお願いします。
header ("Content-type: application/octet-stream");
header ("Content-Transfer-Encoding: binary");
header ("Content-Disposition: attachment; filename=" . $fname);
header ("Content-length: " . filesize( $fname));
readfile ($fname);
0807nobodyさん
2005/08/29(月) 14:01:26ID:pua4PW6Bローカル、レンサバとも同じ状態です。
HPのTOPに置いてあるアクセス解析は正常に取得してるようなのですが。。
自分なりに調べて見たのですが、さっぱり解らずに困っています。
何が原因なのでしょうか。。
0808nobodyさん
2005/08/29(月) 14:01:41ID:???mb_eregとかで最初に出現した全角数字を取って
mb_strposで、取得した全角数字の場所取るってのは?
0809nobodyさん
2005/08/29(月) 14:05:29ID:???半角数字のパターンは[0-9]だと思いますが、全角数字のパターンはどうすればいいのでしょうか?
[0-9]としたら範囲が空とエラー吐かれました。
0810809
2005/08/29(月) 14:22:42ID:???実験的なステータスらしいが、mb_ereg_search_pos ってのがある。PHP4.2以上。
ttp://www.php.net/manual/ja/function.mb-ereg-search-pos.php
でもイマイチ使いづらいかも。
0812nobodyさん
2005/08/29(月) 14:43:41ID:???有難うございました。
無事、表示されました。
あと、Basic認証内ファイルの場合ですが、
indexは"Authorization: Basic"でクリアできますが
フレーム部分では認証がポップアップされます。
よろしければこの対策についてご教授願えますでしょうか?
0813810
2005/08/29(月) 14:48:45ID:???うまくいかんです。関数の問題なのか、正規表現の問題なのか?
$ptn = "[0|1|2|3|4|5|6|7|8|9]"; //全角数字
$str = "abc8d2e89f"; // 結果 [0] => 7 , [1] => 1
//$str = "今日は8月28日"; // 結果 [0] => 1 , [1] => 1
mb_ereg_search_init($str);
$ary = mb_ereg_search_pos($ptn); // [0]は一致した先頭の位置、[1]は一致した長さ(バイト数)
print_r($ary);
$ptn = "8"; にすると [1] => 2 になるし。
0816806
2005/08/29(月) 15:02:25ID:???fopenしてからfgetc一回したら3バイトのファイルができました。
2回fgetcしたら4バイトになりました。(相変わらず化けてます)
PHPの原理がよくわかってないので、なんか変な感じです。
これは設定が悪いのでしょうか?どなたかヒントください。
0817813
2005/08/29(月) 15:45:59ID:???813ではスクリプト=EUC-JP、内部エンコード=SJISでした。
なので、mb_internal_encoding("EUC-JP"); としましたが結果は同じです。
>815
ここ(ttp://ash.jp/code/codetbl2.htm)見るとEUCでは「0」=A3B0、「9」=A3B9なので
$ptn = "[0xA3B0-0xA3B9]";
としましたがマッチしませんでした。
指定方法が根本的に間違ってるのかな?
0818nobodyさん
2005/08/29(月) 15:58:06ID:???ってか、POSIXのEREって16進エスケープ対応してんの?
0819nobodyさん
2005/08/29(月) 16:43:09ID:???>>805
PHP4.3.10です。
もしかしてPHP5なら全角でもOK?
>>796>>800>>808
mb_eregを使ってマッチした文字列から
非正規表現でマッチさせればよかったのですね。
勉強させていただきました。
0820nobodyさん
2005/08/29(月) 16:43:35ID:???ループさせるのは間違いじゃないが、$aaaの添字に$iを使ってしまうと、
行(外側のwhileループ)ごとに0から始まるから、
$aaa[0]が何度も上書きされることになりやすい。
$aaaの添字には別の変数を使え。
それから、最後の出力テストはprint_rを使うと便利。
もう1つの間違いについては>>778
0822nobodyさん
2005/08/29(月) 18:25:09ID:???, -―ー '" ; ' 7 !)
/ , '"^、 `ー-、 _, -ー ! /'|
|' _ミ7ゝ ,. ! / |
|| Y' ::y' : | |
|.| | : : | !
|' ! .'o, | '.o, ! |,/
| ヽ、 ,人 ノ |
! | `゛´ ` ー 'ヽ ノ
i | ヽ、_, '
ヽ、__ ノ /
0823nobodyさん
2005/08/29(月) 19:19:57ID:???どこをいじったらなおりますか?
0824823
2005/08/29(月) 19:27:17ID:???MYSQLに入れるときにaddslashesで¥を付けていれたらいいのれすか?
0825nobodyさん
2005/08/29(月) 21:21:05ID:???0826nobodyさん
2005/08/29(月) 21:23:52ID:???これをローカルで動かせるようにするにはどうしたらよいのでしょうか。
Apache2.0.54.0、OSはWinXPSP2、PHP5、
ImageMagick-6.2.0-Q16-windows-dll.exeを使いImageMagickをインストールした
ところまで来ました。
0827nobodyさん
2005/08/29(月) 21:29:00ID:???環境は以下の通りです。
Win XP
PHP 5.0.4
Apache 2.0.54
また、(ない知識を絞ったうえで)関連すると思われるphp.iniの設定は、
safe_mode = Off
register_globals = Off
doc_root =
file_uploads = On
upload_tmp_dir = "C:/tmp"
upload_max_filesize = 2M
です。
このような環境下で
move_uploaded_file($_FILES['file']['tmp_name'], $_FILES['file']['name']);
を実行すると、
Apache2のインストールディレクトリに$_FILES['file']['name']な名前の
ファイルが作成(移動)されてしまいます。
つまり、phpスクリプトが置かれているカレントディレクトリにファイルが移動されないんです。
この問題については、
http://jp.php.net/manual/ja/function.move-uploaded-file.php
に「Darrell」という方がそれらしい情報を投稿してくださってますが、
その解決策のようなものが見当たりません。
なので、よろしければ、
同じような問題に遭われた方がいらっしゃれば、
解決策や回避策など教えていただければと思います。
長文失礼しました。
0828774
2005/08/29(月) 21:54:14ID:???レスありがとうございます。
>>775
コマンド使えませんでした・・・。
>>776
それを参考にして色々やってみたいと思います。
ありがとうございました。
0829nobodyさん
2005/08/29(月) 22:07:57ID:???PostgreSQLをインストールして、PHPからアクセスするために
PHPのpgsqlモジュールが必要になりました。
ほかのモジュールをそのままでpgsqlモジュールだけ追加して使う方法は
あるのでしょうか。それともPHPの再インストールが必要なのでしょうか。
よろしくお願いします。
MacOSX10.3.9
Apache1.3.33
PHP4.3.9
PostgreSQL8.0.2
0830829
2005/08/29(月) 22:12:42ID:???0831nobodyさん
2005/08/29(月) 22:13:06ID:???if (!isset($x) && !isset($y)) {
echo $giko;
}
else {
echo $mona;
}
上記のように条件分岐させているのですが、
$mona を表示させるか否かのみを判定したい場合はどの様にするのが格好いいでしょうか。
今のところは
if (!(!isset($x) && !isset($y))) {
echo $mona;
}
こんな風に対処したのですが、なんかカッチョ悪い・・・
0833nobodyさん
2005/08/29(月) 22:17:45ID:???単純に
if(isset($x) && isset($y)) {
echo $mona;
}
でいいんじゃないの?
0834nobodyさん
2005/08/29(月) 22:20:25ID:???要は $x か $y のどちらかがセットされていたら $mona を表示でいいんだろ?
これではダメなん?
if (isset($x) || isset($y))
echo $mona
0835nobodyさん
2005/08/29(月) 22:24:45ID:???それでいいんじゃないの?
if (!isset($x) && !isset($y)) { ; } else { echo $mona; }
って書き方もありっちゃあり。
ただ、!a && !b ってのは a || b と等価なんで(ド・モルガンの法則って奴)
>>831の上の奴は
if (isset($x) || isset($y)) { echo $giko; } else { echo $mona; }
下の奴は
if(!(isset($x) || isset($y))) { echo $mona; }
と置き換えられる。
0836nobodyさん
2005/08/29(月) 22:30:14ID:???echo (isset($x) || isset($y)) ? $giko : $mona;
くらいかな。
0837831
2005/08/29(月) 22:41:33ID:???即レス有り難うございます!
ド・モルガンの法則・・・ウッ頭痛が・・・
三項演算子も使えたんですね。いつか使ってやろうと狙っているのですが思い浮かんだ試しがない・・・
早速書き直します。サンクス!
0838nobodyさん
2005/08/29(月) 22:46:48ID:???こっちも微妙にスレ違いだと思うけど…。
もとのPHPを残したいのはSoftwareUpdate対策?
手元にmacが無いので、ちゃんとは分からないけど、
普通にコンパイルオプション付けて入れ直したらよいのでは。
私はそうしてました。
んで、そのコンパイルオプションは、
デフォルトで入っている PHPの phpinfo() をコピペして必要なのを追加、がオススメです。
どうしても気になるなら、/usr/local/ に入れるなりして回避してください。
0839nobodyさん
2005/08/29(月) 23:05:06ID:???可能かもしれないし、駄目かもしれない。
使ってるPHPはどうやって作ったん?
取り敢えずpgsql.soとMac、php辺りでぐぐれ。
0840nobodyさん
2005/08/29(月) 23:14:43ID:???>>829のPHPは、macに標準で入ってるやつでしょう。
mac用のpgsql.so だけ配ってるなんて聞いたこと無いし。
なるべく他の環境を変えないようにするには、
ソース持ってきてコンパイルしか無かったと思う。
0841827
2005/08/29(月) 23:20:36ID:???move_uploaded_file($_FILES['file']['tmp_name'], $_FILES['file']['name']);
↓
move_uploaded_file($_FILES['file']['tmp_name'], getcwd()."/".$_FILES['file']['name']);
この変更で、move_uploaded_file()がちゃんと動く鯖でも、
僕のような問題が起こる鯖でも、どちらでもちゃんと動きそうですね。
初歩的な質問な気がして、はずかしい・・。
ご迷惑をおかけしました。
ですが、もしphp.iniの設定などで今回の問題が直せるのでしたら、
ご存知の方是非教えてください。以上です。
0842nobodyさん
2005/08/29(月) 23:51:18ID:???ローマ字で
aiueonn
と入力すると
あいうえおん
と返してくれるライブラリーってないですか?
Javascriptでは見たことあるのですがPHPでないですかね?
宜しくお願いします。
0843nobodyさん
2005/08/29(月) 23:55:01ID:???0845nobodyさん
2005/08/30(火) 00:20:18ID:???↓
submit
↓
セッションデータのデータをメールへ送信
unset( $_SESSION[data] ); //セッションデータを削除
↓
header('location: aaa.htm'); // 別ページへジャンプ
上記のようなスクリプトがあるんですけど。
ジャンプで飛ばした後、ブラウザの戻るを実行するとunsetした
セッションが復活してしまいます。
完全に消す方法はあるのでしょうか。
unset( $GLOBALS[_SESSION][data])でも消えませんでした。
0846nobodyさん
2005/08/30(火) 00:23:00ID:???phpのソースパッケージをダウンロードしてきて、
$ tar zxvf php-x.x.x.tar.gz
$ cd php-x.x.x/ext/pgsql
$ phpize
$ ./configure --with-pgsql=/path/to/postgres
$ make
$ sudo make install
いつもモジュールが欲しくなった時はこんな感じでやっつけてる。
あとはdl()かphp.iniでロードするだけ。
ひょっとしたらapacheでDYLD_LIBRARY_PATHを設定する必要があるかも
それはpostgresのインストール方法次第だと思うけど、postgres使った事無いからわからん。
/path/to/postgres がどこかは自分で考えろよ。
0847829
2005/08/30(火) 00:55:02ID:???レスありがとうございます。
>>840さんのおっしゃる通りMacに標準ではいっているPHPです。
それでソースから全部インストールするのを躊躇っていました。
phpinfo()からConfigure Commandをコピペして
"--with-pgsql='postgresのパス'"を加えて再インストールしてみます。
DYLD_LIBRARY_PATHのことはこれから調べてみます。
ありがとうございました。
0848nobodyさん
2005/08/30(火) 01:02:01ID:???質問してばっかだなお前ーぶぶぶーwww
ただ置換すればいいだろぼけなすーwwwww
そんくらい自分で書けやかすーwwwwww
0849nobodyさん
2005/08/30(火) 01:07:11ID:FCdiEo7pこんな感じでPHPだけ"script.php"というファイルにまとめていろんなファイル
から呼び出しています。さらに"script.php"からデータの読み書き用に"data.log"という
ルートにあるファイルにアクセス。
さて、ここで
./folder/B.html →(ファイル内呼び出し)→ ./script.php →(データ読み書き)→ ./data.log
という呼び出しをしたとき、script.phpが"./data.log"にアクセスできないと
エラーを返します。つまり"./folder/data.log"にアクセスしようとしてエラーに
なっているんですね。呼び出すhtmlファイルの場所に依存してscript.phpから
毎回エラーを返されるのは正直鬱陶しいんですがみなさんどうされてます?
せめてscript.phpからdata.logを相対パスで呼んでくれればこんな問題は
生じないんですがね。
0851nobodyさん
2005/08/30(火) 01:29:52ID:???図星突かれてそんなに悔しかったのか?wwwwww
誰がいつどこで「単純な置換で事足りる」っつったんだ?wwwwwww
本人だとしたらさすがすぎるwww低脳丸出しだなwwwwww
0852nobodyさん
2005/08/30(火) 01:30:41ID:???別に単純な置換繰り返すだけで出来る気がするんだけど?
元のJavaScriptとやらの提示がいないので、ご希望の精度が得られるかどうかは不明だけど。
というか、正規表現置換(ereg/preg_replace)とかstr_replaceとかだけが置換じゃないよ。
自分でパターンを置き換える処理も立派な置換だ。
んで、作れって言うんだったらスレ違い。↓へどうぞ。
■こんなCGI作ってください■
http://pc8.2ch.net/test/read.cgi/php/1102980903/
0853nobodyさん
2005/08/30(火) 01:32:38ID:???■ このスレッドは過去ログ倉庫に格納されています