PHP自動添加http://頭 轉換網址為連結

來源:互聯網
上載者:User

   有時候,當我們需要使用者輸入網址的時候,一般我們會讓使用者省略掉"http://",當提交完成後用代碼自動再加上http://,若有需要,我們還可將網址轉換成連結的形式,類似於眾多網頁編輯器裡的功能,以下代碼將實現這類功能。先來看自動添加"http://"頭的代碼:

  自動添加"http://"頭的PHP函數代碼:

  1<?php

  2if (!preg_match("/^(http|ftp):/", $_POST['url'])){

  3 $_POST['url'] = 'http://'.$_POST['url'];

  4}

  5?>

  PHP將網址字串轉換成超級連結,可將URL和E-mail 地址字串轉換為可點擊的超級連結:

  01<?php

  02function makeClickableLinks($text) {

  03 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',

  04 '1', $text);

  05 $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)',

  06 '12', $text);

  07 $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',

  08 '1', $text);

  09return $text;

  10}

  11?>

  將這兩段代碼結合起來,可形成以下用法:

  view sourceprint?1

  2$_POST['url']="www.codefans.net";

  3if (!preg_match("/^(http|ftp):/", $_POST['url'])) {

  4 $url = 'http://'.$_POST['url'];

  5}

  6echo makeClickableLinks($url);

  7?>

  最終效果是把www.codefans.net加上了http://,並實現連結的形式。

相關文章

Cloud Intelligence Leading the Digital Future

Alibaba Cloud ACtivate Online Conference, Nov. 20th & 21st, 2019 (UTC+08)

Register Now >

Starter Package

SSD Cloud server and data transfer for only $2.50 a month

Get Started >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。