トップページphp
1001コメント317KB

【PHP】下らねぇ質問はID出して書き込みやがれ 97

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2010/07/23(金) 06:24:51ID:3G71fl8i
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。


【PHP】下らねぇ質問はID出して書き込みやがれ 96
http://pc11.2ch.net/test/read.cgi/php/1275032024/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0424nobodyさん2010/08/27(金) 18:00:05ID:???
>>422
自己満足、オナニーだな。
0425nobodyさん2010/08/27(金) 18:01:23ID:???
ついでに改行も
0426nobodyさん2010/08/27(金) 18:06:53ID:???
出力するHTMLソースは
出来る限りそういうの消えるようにしてるな

0427nobodyさん2010/08/27(金) 18:18:15ID:???
汚いソース書いてたらアホ扱いされるだけだろ
0428nobodyさん2010/08/27(金) 18:20:57ID:???
-----------------------------------------------
0429nobodyさん2010/08/27(金) 18:46:13ID:mDlhgxIh
ところで、インデントというかタブを多用した結果、ソースが非常に横長になっていく。
フルHDモニタで開発していればさほど問題は無いが、モバイルPCで開発やってる
時なんかは死ねる。

これってもしかしてテキストエディタで書いてるから悪い、とかそういう問題かな?
いや、そもそもEclipseとかPHPプラグインがどれほど便利なのかとか、使ったこと
無いから全然知らないんだが。
0430nobodyさん2010/08/27(金) 18:54:20ID:???
本当にあった怖い話

* ディレクトリ構成がプログラマの名前
* 関数の頭にプログラマの名前が付く
* バージョン管理システムを使わないまたはVisual SourceSafe
* コミットは朝しろ,帰る前にするなと言う
* 手動でビルドテストしなければならない
* オレオレコンテナしか信じない
* ハッシュは遅いから使うべきでないと言う
* 「よくわからんから」多重継承は禁止すべきとか言う
* 正規表現を使うよりCで書いたほうが速いと言う
* クラスがわからないのでクラスを使ってくれない
* 1つのソースコードが10,000行でも気にしない

http://gihyo.jp/dev/clip/01/orangenews/vol58/0007
0431nobodyさん2010/08/27(金) 18:55:05ID:???
>>429
タブの文字数変えろよ・・・メモ帳かよ
0432nobodyさん2010/08/27(金) 18:57:32ID:???
>>429
自分のphpソースを確認してみたけど、横長で死ねるようなとこは見当たらなかった。
横900pxぐらいの領域だけど、ほとんどが700〜800ぐらいに収まってたよ。
0433nobodyさん2010/08/27(金) 19:04:18ID:???
死ねてる部分をちょっとコピペしてみろよ
きっといろいろ問題が見つかるのではあるまいか

個人的にはこの書き方が嫌いで
$untarakantara = array(1,
/*ここのインデントをタブやらスペースやらで調整*/ 2,
/*ここのインデントをタブやらスペースやらで調整*/ 3);

この書き方をオススメしたい
$untarakantara = array(/*ここで改行*/
/*タブひとつ*/ 1,
/*タブひとつ*/ 2,
/*タブひとつ*/ 3,
);
0434nobodyさん2010/08/27(金) 19:04:20ID:???
>>429
可読性のためにZendとか大抵のコーディング規約で80文字を目安に改行するようになっている
これはシェルの文字数が横80文字だった名残。
テキストエディタでも80文字で改行される設定になってることが多いのはそのため。

要はコーディング規約の通りに書いていけば見やすいコードになる
0435nobodyさん2010/08/27(金) 19:41:54ID:???
ソースコードフォーマッタなりIDEなりで整形するのをお勧めする。
人力整形は時間の無駄。
0436nobodyさん2010/08/27(金) 19:48:28ID:???
んあ?
0437nobodyさん2010/08/27(金) 20:46:43ID:???
つーかそんな階層深くなるようなコード書くなよ
0438nobodyさん2010/08/27(金) 22:01:47ID:???
いまどき80桁制限は勘弁してくれ。
0439nobodyさん2010/08/28(土) 13:30:13ID:???
PHP+SQLiteで掲示板サイトを作っています。

記事には、タイトル、投稿者、本文、投稿日時の属性があります。
投稿日時順に並び替えることはSQL文で出来るのですが、

全ての記事のタイトルと本文を走査して全文検索する

機能をどうやって作ればいいのか分かりません。
これはSQLiteのSQL文だけでは無理なのでしょうか?
PHPのライブラリなどが必要になりますか?
一般的にはどのように実現するものなのか、教えてください。
宜しくお願いします。
04404392010/08/28(土) 13:30:58ID:l4dMcbQQ
すいません、ID出し忘れました。
0441nobodyさん2010/08/28(土) 13:34:32ID:???
>>4339
正規化
0442nobodyさん2010/08/28(土) 13:50:57ID:???
>>439
手っ取り早く簡単に済ませるならSQLのLIKE構文だな

>>441
正規化関係ないなw
0443nobodyさん2010/08/28(土) 15:07:30ID:???
>>442
関係あるな
正規化を知らないない奴はミジンコ
0444nobodyさん2010/08/28(土) 15:26:05ID:???
タイトル、投稿者、本文、投稿日時

これからどこを正規化したら検索できるようになるんだよ
0445nobodyさん2010/08/28(土) 15:31:42ID:wQv57lt/
PHPではないけどこういうものもあるよ
http://www.namazu.org/index.html.ja

ただ組み替えないと行けないからめんどくさいだろうけど
0446nobodyさん2010/08/28(土) 15:45:15ID:???
>>443
多分正規化という言葉を最近知って使いたいだけなんだろうけど
意味も理解して本当に正規化が必要かどうか判断してから言おうな
0447nobodyさん2010/08/28(土) 15:46:55ID:???
>>446 お前がなwwww
0448nobodyさん2010/08/28(土) 15:53:37ID:???
ここは下らねぇ質問スレであって
下らねぇ喧嘩スレじゃねーぞカスども
0449nobodyさん2010/08/28(土) 19:25:42ID:???
>>441
>>439の項目を見たら正規化って言葉は普通出てこないな

全文検索でSQLのLIKEを使うとINDEXが効かなくて全レコードを舐める事になるから遅くなる
仕様を見て予め後々の事を考える必要はあるかも知れんけどね

0450nobodyさん2010/08/28(土) 20:07:53ID:???
>SQLのLIKEを使うとINDEXが効かなくて

0451nobodyさん2010/08/28(土) 20:25:40ID:???
SQLiteの場合は効く方法もあるらしいな

まぁ正直な話し>>439がどういう物を想定してるのか
解らない限り正規化含め何が最適解かなんてわからんな

どちらにせよそのテーブルで
正規化する必要性が本のちょっとでもある場所なんて
投稿者名ぐらいしか無いし。それを分けた所で
アプリとしての実行速度が遅くなってはあれだしなw
0452Perl忍者 ◆M5ZWRnXOj6 2010/08/28(土) 20:32:58ID:kvWFLXrw
    X
  ∠ ̄\∩
  |/゚U゚Lノ   PHPをやる理由はなんですか
 〜( ニ⊃  
  ( 丶/
  ノ>ノ
  UU
0453nobodyさん2010/08/28(土) 20:36:18ID:???
Rubyスレ落ちたので誰か立てて
0454Perl忍者 ◆M5ZWRnXOj6 2010/08/28(土) 20:37:46ID:kvWFLXrw
    X
  ∠ ̄\∩
  |/゚U゚Lノ   てめえが立てろカス
 〜( ニ⊃  
  ( 丶/
  ノ>ノ
  UU
0455nobodyさん2010/08/28(土) 20:45:14ID:???
>>450
LIKEで先頭一致の場合はINDEXが使われるが部分一致を使う場合INDEXを定義していても総当りするエンジンが多い
SQLLiteの場合は全文検索のモジュールがあるみたいだから良いかもしれんが
0456nobodyさん2010/08/28(土) 22:46:12ID:???
>>439
「SQLite 全文検索」でぐぐってみたら、SQLiteにも全文検索の機能が
あるみたいじゃん。
まあ、和文でやろうと思ったら、SQLiteに備わってるそのままだけじゃなく、
N-gram化か形態素解析との組み合わせになるみたいだけど。
0457nobodyさん2010/08/28(土) 23:10:43ID:???
SQLite使う時点で(ry
0458nobodyさん2010/08/29(日) 01:25:10ID:???
2chなんかテキストそのままだしw
0459nobodyさん2010/08/29(日) 01:33:27ID:???
アクセス元のIPが固定かDHCPか分かる方法ありますでしょうか。

04604592010/08/29(日) 01:41:13ID:???
解決しました
0461nobodyさん2010/08/29(日) 09:43:53ID:???
お前らエディタは何を使ってるんだ?
0462nobodyさん2010/08/29(日) 09:50:32ID:???
>>1
0463nobodyさん2010/08/29(日) 13:54:07ID:???
Ruby会議での調査によると
50%はemacs系
40%はvim系
5%はxyzzy
5%はその他
みたいな感じ
0464nobodyさん2010/08/29(日) 14:20:54ID:???
自分は根っからのemacs好きだがwebプログラミングではvimになる。
vimの機動性は素晴らしい。
メールとか原稿書くときはEmacs
0465nobodyさん2010/08/29(日) 18:48:58ID:istLGNW8
Cannot use output buffering in output buffering display handlers
ってどうすれば直るんでしょうか?
php.iniのoutput_bufferingをOnにしても直りません。
0466nobodyさん2010/08/29(日) 20:53:19ID:???

◆質問する時の注意
・ 己の行った操作、変更などを詳しく明記すること。
0467nobodyさん2010/08/30(月) 08:36:22ID:???
フレームワークでよく
array('abc'=>array('a'=>'orz', 'b'=>'orz=');
みたいな方法でコンフィグを書く事があるのですが
これって一般的にはどうやって値を取り出してるのでしょうか?
0468nobodyさん2010/08/30(月) 10:21:00ID:???
var_dump
0469nobodyさん2010/08/30(月) 10:52:17ID:???
$hoge = array('abc'=>array('a'=>'orz', 'b'=>'orz=');
としたら
$hoge['abc']['a']
$hoge['abc']['b']
でしょ
0470nobodyさん2010/08/30(月) 11:15:04ID:???
>>469
フレームワークでって言ってるでしょ。
その程度のお馬鹿は出てこなくていいよ。
0471nobodyさん2010/08/30(月) 11:30:22ID:???
お前がその程度のこともしらないお馬鹿だと思って答えたんだが
0472nobodyさん2010/08/30(月) 11:32:56ID:???
PHPのソースとしてincludeもよし、 evalでもよし。
パースする処理を自分で書いてもよし。  というような方向の回答がご希望?
0473nobodyさん2010/08/30(月) 11:34:35ID:???
喧嘩するなよ
あとID出して無い質問にマジメに答える事は無い
0474nobodyさん2010/08/30(月) 11:55:04ID:???
普通にforeachで良いだろ
気になるなら色んなFWのconfig関連の所みてみれ
0475nobodyさん2010/08/30(月) 12:49:52ID:njG8UTwt
PHPを久しぶりにやったら苦戦してます。

function urltest($text)
{
$url = ここら辺がうまいこといかない。1行下もだめかも?
$link = "<A Href=\"$url\">http://などを除いたURL</A>";
$newtext = str_replace('$url', '$link', $text);
return($newtext);
}
?>

http:// や ftp:// 、メールアドレスを置換させようとすると
全く置換してくれないですorz
最終的には、行始めがhttp://で始まらないURLもリンクさせたいです。
例としてhttp://www.2ch.net/というような感じのURL
0476nobodyさん2010/08/30(月) 13:04:26ID:???
$newtext = str_replace('$url', '$link', $text);

そりゃー変数をシングルクォートでくくったらダメだろう。
0477nobodyさん2010/08/30(月) 13:21:49ID:???
urlは正規表現でとってこればいいんじゃないのかね
$res = preg_replace('/(https?|ftp)(:\/\/([-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+))/',"<a href=\"$0\">$3</a>",$text);

こんな感じで
0478nobodyさん2010/08/30(月) 14:51:25ID:yNaLEgzn
>>476
あ、やってしまったぽいorz

>>477
http:// から始まるURLにはマッチするけど

www.google.com
photo.google.com

こういうURLには、マッチしないよね・・・orz
0479nobodyさん2010/08/30(月) 14:59:24ID:???
それはURLなのか?
0480nobodyさん2010/08/30(月) 15:10:21ID:???
>>478
それは正規表現でどーとでもできるだろ・・・
0481nobodyさん2010/08/30(月) 15:37:40ID:yNaLEgzn
$newtext = preg_replace("/([a-z0-9\-\.]+\.(com|org|net|jp)).*/i", "<a href=\"$1\">$1</a>", $text);

http://<;a href="www.google.co.jp" rel="nofollow">www.google.co.jp</a>
<a href="www.google.com" rel="nofollow">www.google.com</a>
hoge@<a href="hogehoge.com" rel="nofollow">hogehoge.com</a>

メールも置換するの?
俺の技術だと無理だわorz
0482nobodyさん2010/08/30(月) 15:48:50ID:???
php 自動リンク で検索
0483nobodyさん2010/08/30(月) 17:50:00ID:VlaMGgSY
<?php

function 関数名(ここって何??) {
実装したい処理
}

?>

() の中っていまいちわからないのですが
$abc って書けば、$abcの値のデータ以外は処理しないってことでしょうか?

独学でPHP学んでたら早速躓きましたorz
0484nobodyさん2010/08/30(月) 17:59:41ID:???
そこは引数です
0485nobodyさん2010/08/30(月) 18:05:32ID:???
>>483
そのfunctionに渡したい値(引数)

この程度で質問にくるようだとキリがないよ
何か本買った方がいいんじゃない?
0486nobodyさん2010/08/30(月) 18:13:57ID:???
>>483
http://jp.php.net/manual/ja/index.php
0487nobodyさん2010/08/30(月) 18:56:15ID:H9RFX+D7
SQLが成功したかどうかってどうやって調べたら良いのですか?
結果によってメッセージ等を表示させたり処理を分岐したいのですが・・・。
0488nobodyさん2010/08/30(月) 18:59:28ID:???
pgr
0489nobodyさん2010/08/30(月) 19:13:35ID:???
>>487
DBの接続は何を使ってる?
PDOならこんな感じ

try{
// クエリを発行
} catch (PDOException $e){
// エラー処理
}
0490nobodyさん2010/08/31(火) 00:42:22ID:???
PHPの変数のスコープって関数の内外だけって考えればOKですか?
JavaScriptみたいにブロックがスコープ持たないんですよね?
0491nobodyさん2010/08/31(火) 06:30:13ID:???
function urltest($text)
{
$extensions = 'com|org|net|gov|edu|mil|us|info|biz|ws|name|mobi|cc|tv|jp';
$patterns = array(
'#([\s{}\(\)\[\]])(([a-z]+?)://([a-z_0-9\-]+\.([^\s{}\(\)\[\]]+[^\s,\.\;{}\(\)\[\]])))#ie',
"#([\s{}\(\)\[\]])([a-z0-9\-\.]+[a-z0-9\-])\.($extensions)((?:/[^\s{}\(\)\[\]]*[^\.,\s{}\(\)\[\]]?)?)#ie"
);
$replacements = array(
"'$1<a href=\"$2\" title=\"$2\">' . 'Link' . '</a>'",
"'$1<a href=\"http://$2.$3$4\" title=\"http://$2.$3$4\">' . 'Link' . '</a>'"
$text = preg_replace($patterns, $replacements, $text); <------ この行でエラー出る。何かおかしいですか?
return($text);
}
0492nobodyさん2010/08/31(火) 07:33:13ID:???
$replacements = array(
の閉じカッコ
0493nobodyさん2010/08/31(火) 08:16:28ID:???
http://example.com:8080/とかhttp://192.168.1.1/も正しいURL(ry

((https?|ftp)\:\/\/)?([\w-]+\.)+([\w-]+)(\:[\d]+)?([\w\.\*\/\:%,!#~@&=-]+)?

これでURLはマッチすると思う
0494nobodyさん2010/08/31(火) 08:49:22ID:???
>>489
PDOだとsetAttributeで設定するPDO::ATTR_ERRMODE属性の値で
エラー時の動作が違うよ。詳しくはマニュアル嫁
0495nobodyさん2010/08/31(火) 10:08:13ID:mnh9hvQe
質問です

自前で作ったクラスを、配列であるかのように扱いたいのですが、ちょっと困っています。

ArrayAccess インターフェイスなどを使って、とりあえず一通り実装してみたのですが
array_mergeのような「配列操作関数」に渡すと、お前配列じゃないよねと関数が失敗してしまいます。

私の実装の仕方がまずいのかなと思い、標準のArrayObjectでも試してみたのですが、
array_mergeはArrayObjectも受け付けてくれませんでした

配列操作関数もうけつけてくれる、配列であるかのようなクラスを作るにはどうしたらよいでしょうか?
0496nobodyさん2010/08/31(火) 10:48:36ID:???
phpの仕様を修正して処理系を作り直す
0497nobodyさん2010/08/31(火) 10:50:56ID:???
>>494
質問の書き方から、初心者と察したので
そういうのまで書くと余計に混乱すると思ったんだが
言葉足らずだったか、補足thx
0498nobodyさん2010/08/31(火) 12:03:21ID:???
入門書とかは未だにPDO使おうとしてなかったりするからな
04994872010/08/31(火) 12:18:33ID:nqVyEYky
>>497
ありがとう。何となくわかりました。
今は私もPDOを使ってます。

>>498
今ってPDOが人気なんでしょうか?
プレースホルダの動作にセキュリティの問題があるとかで、非推奨、
なんて話を聞いたので、どうしたものかと思ってました。
0500nobodyさん2010/08/31(火) 12:33:06ID:???
おまえはPDO云々の元記事を理解出来てないだろ
0501nobodyさん2010/08/31(火) 14:49:30ID:naNUn36r
http://hoge.com/123.cgi?home=1

を表示したいんだけど、

<?php
require("123.cgi?home=1");
?>

で呼び出せません。
includeでもだめでした。

どうすれば呼び出せますでしょうか?
誰か教えてください。
よろしくおねがいします。
0502nobodyさん2010/08/31(火) 14:57:15ID:???
>>147
亀で申し訳ないんだけど一応報告。
ここの内容に該当してました。

ttp://www.phppro.jp/qa/1577
0503nobodyさん2010/08/31(火) 14:57:40ID:???
HOGE LUMBER COMPANYに怒られないようにしろよ
0504nobodyさん2010/08/31(火) 17:10:42ID:???
>>501
file_get_contents
0505nobodyさん2010/08/31(火) 17:25:48ID:???
>>501
>>4
0506nobodyさん2010/09/01(水) 06:43:43ID:o7qUnh2A
【OS名】CentOS
【PHPのバージョン】5.3.3
【連携ソフトウェア】MySQL
【質問内容】
Warning: phpinfo() [function.phpinfo]: It is not safe to rely on the system's timezone settings.
You are *required* to use the date.timezone setting or the date_default_timezone_set() function.
In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier.
We selected 'Asia/Tokyo' for 'JST/9.0/no DST' instead in /var/www/html/phpinfo.php on line 9

date関数を使うとこのエラーが出るのでphp.iniに
date.timezone = Asia/Tokyo
と設定しましたがエラーが消えません(コメントアウトは外しました)。
phpファイルに
date_default_timezone_set('Asia/Tokyo');
を記述すると消えます。

試したこと
date.timezone = "Asia/Tokyo" とダブルコーテーションで囲ってみたけどダメだった。
ini_get('date.timezone') をechoしてみたが何も表示されなかった。
php.iniのファイルパスは確認しています。
php.ini修正後にapacheは再起動しています。

どなたかお願いします><;
0507nobodyさん2010/09/01(水) 07:48:33ID:???
>>506
とかなんとか言いながらpath間違ってんだろ
0508nobodyさん2010/09/01(水) 10:34:04ID:???
;
0509nobodyさん2010/09/01(水) 13:54:56ID:???
Apache再起動してみろ
0510anybody2010/09/01(水) 14:19:00ID:???
URL入力したら、htmlソースのh1とh2タグの中身を抽出して表示してくれる
phpソースを探してます。ライブラリー、コードのアドバイスいただけますか。
0511nobodyさん2010/09/01(水) 15:10:34ID:???
性器表現
0512anybody2010/09/01(水) 15:21:15ID:???
>>511 正規表現ですか。ライブラリーとか使わず出来るってことですか?
0513nobodyさん2010/09/01(水) 15:25:18ID:???
<(chi|ma)nko>(.*?)</\1nko>
0514anybody2010/09/01(水) 15:28:25ID:???
>>513 
すいません、何となくわかりそうで分からないです。何かヒントいただけますか。
0515nobodyさん2010/09/01(水) 15:37:18ID:???
>>514
<h(1|2)>(.*?)</h(1|2)>
0516nobodyさん2010/09/01(水) 15:43:30ID:???
>>510
正規表現は他の人にまかせるとして
HTMLソースはfile_get_contentsでとってこれる

PHP: file_get_contents - Manual
http://jp2.php.net/manual/ja/function.file-get-contents.php
0517anybody2010/09/01(水) 15:56:22ID:???
>>516 ありがとうございます。
hタグの中身だけを表示するには、file_get_contentsで範囲指定するばいいのですか。

まだphp初めて間もないのですいません。
0518nobodyさん2010/09/01(水) 16:18:58ID:???
>>517
まず、file_get_contentsで指定したURLのHTMLソースを全部とってくる
次に、とってきたソースからh?タグを正規表現で抜き出す。

HTMLソースは>>516のマニュアルの
「例1 とあるウェブサイトのホームページのソースの取得と出力」
を試してみて
0519nobodyさん2010/09/01(水) 16:34:07ID:???
>>517

$subject = file_get_contents("http://www.yahoo.com/"); // >>516
$pattern = '/<h[12].*?>(.*?)<\/h[12]>/is';
preg_match_all($pattern, $subject, $matches); // http://jp.php.net/manual/ja/function.preg-match-all.php

var_dump($matches);
0520nobodyさん2010/09/01(水) 16:40:58ID:???
なにこれ釣り? 桜?
0521anybody2010/09/01(水) 17:36:27ID:???
>>516
>>518
>>519

アドバイスありがとうございます。 >>519のコード試したら出来ました。
これから自分でも書いてみてみようと思います。並び替えとか表示の仕方を書いてみようと思います。
アドバイスしてくれた方ありがとうございます。
0522nobodyさん2010/09/01(水) 18:19:47ID:AryEx4i2
$text = ' ' . $text;
#URL
$text = preg_replace("/(((http[s]?:\/\/)|(w\.))?(([a-z][-a-z0-9]+\.)?[a-z][-a-z0-9]+\.[a-z]+(\.[a-z]{2,2})?)\/?[a-z0-9._\/~#&=;%+?-]+[a-z0-9\/#=?]{1,1})/is", "<a href=\"$1\">$1</a>", $text);
#mail
$text = preg_replace("#(^|[\n ])([a-z0-9&\-_\.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $text);
$text = substr($text, 1);
return($text);
で、なんとかマッチするようになりましたが、問題が出てきました

http://www.google.co.jp/ ⇒ <a href="http://www.google.co.jp/">http://www.google.co.jp/<;/a>
www.google.co.jp ⇒ <a href="www.google.com">www.google.com</a>
hoge@'hogehoge.com ⇒ <a href="mailto:hoge@'hogehoge.com">hoge@<a href="hogehoge.com">hogehoge.com</a></a>
こんな感じになってしまうのですが以下のようにしたいのです。
<a href="http://www.google.co.jp/">www.google.co.jp</a>
<a href="http://www.google.com">www.google.com</a>
<a href="mailto:hoge@'hogehoge.com">hoge@hogehoge.com</a>
力を貸してください。
0523nobodyさん2010/09/01(水) 20:46:21ID:???
置換後の文字を次のパターンで置換するからpreg_replaceでは無理です
0524nobodyさん2010/09/02(木) 08:54:57ID:???
最初のpreg_replaceの正規表現に戻り読みで@がない条件をつければなんとかなんじゃね?
■ このスレッドは過去ログ倉庫に格納されています