-2

最近、プロファイルにリンクを配置すると、質問の正確なタイトルに置き換えられることがわかりました。だから私は知りたいのですが、彼らはそれをどのように行うのですか?

彼らは同様にタイトルを持つ関連リンクでURLを置き換えました

私は彼らがajaxを介してリンクを送信し、次にphpによってリンクヘッダーを作成することによってこれを行うと推測していますimplode ,explode。これは正しい方法/スタックオーバーフローがこれを行うのと同じ方法ですか?

4

2 に答える 2

5

上記のリンクをこのようにテキストエリアに貼り付けているとします

http://stackoverflow.com/questions/12444652/how-to-make-a-link-system-link-stackoverw

これが舞台裏で起こっていることです。以下のURLにGETリクエストを行います。

http://api.stackexchange.com/2.0/questions/12444652?pagesize=30&key=6AU78DZ)GcdjNjAszYmTLQ((&filter=!6G7RPxWUNTleV&site=stackoverflow.com&callback=apiCallbacks[%22stackoverflow.com%22]&_=1347774461814

そのGETのレスポンスは

apiCallbacks["stackoverflow.com"]({"items":[{"question_id":12444652,"title":"How to make a link system link stackoverw"}]});

そこからタイトルを取得できます。お役に立てれば。

于 2012-09-16T05:54:12.467 に答える
4

これはコメントに入れるには情報が多すぎると思ったので、答えとして入れました。プログラムは、そのページの title 要素の値を取得するだけです。

したがって、これが基本的なプロセスです。

  1. プログラムは、文字列内の URL を正規表現 (または何でも) 検索します。
  2. プログラムはその URL を取得します。
  3. プログラムは、URL を関連する HTML コード ('foo' など) に置き換えます。

更新:これは、php で 3 番目のステップを行う方法です。

$myURL = 'http://www.google.com';
preg_match('/<title>(.+)<\/title>/',file_get_contents($myURL),$matches);
$title = $matches[1];

ここから)

于 2012-09-16T05:41:06.040 に答える