تابع تشخيص لينکهای متن؟

I.NoBody

Active Member
سلام.
آيا تابعی هست که خودش قسمتی از يک متن رو که می تونه لينک باشه، تشخيص بده و اونو تبديل به لينک کنه؟
مثلاً توی متنمون داريم :
کد:
http://php.net
خود بخود توی متنمون تبديل بشه به :
کد:
<a href='http://php.net'>http://php.net</a>
 
با تابع substr میتونی انجام بدی مثل سرچ کردن در متن میمونه باید براش یک حرف یا کلمه کلیدی مشخص کنی که دنبالش بگرده

اگر نمیدونی چیجوری باهش کارکنی بگو برای مثال بزنم فقط قبلش بگو این متن از بانک میخونی یا فایل
 

I.NoBody

Active Member
کار کردن با substr رو خوب بلدم.
من ميخواستم بدونم که آيا تابعی وجود داره که خودش اين کار رو بکنه؟ يا بايد خودم بنويسمش؟
 

Salman_MP

Member
amir_s گفت:
احتمالا باید از RegEx استفاده کرد. ereg_replace
دقیقاً !
PHP:
<? 
    
   $strText = 'this is a test http://google.com is a pretty site !'; 

   $strText = preg_replace( '/(http|ftp)+(s)?:(\/\/)((\w|\.)+)(\/)?(\S+)?/i', '<a href="\0">\4</a>', $strText ); 
    
   echo $strText; 
    
   ?>
 

ehsan310

Member
اگر ممکن هست یک مثال برای حالتی که از دیتابیس بخونه بزنید و اینکه اگر من بخوام اینو تو همه صفحات اجرا کنم چطور میشه اینکارو کرد ؟
 
فرقی نمی کنه دوست عزیز فقط کافیه توی کد بالا مقدار رشته ای که از دیتابیس گرفته اید رو به متغیر strText$ بدهید.
در مورد سرعت هم ، جناب سلمان سریعترین راه را پیشنهاد دادند
 

جدیدترین ارسال ها

بالا