نوشته شده توسط
2undercover
نیازی به preg_match نیست می تونید از str_replace استفاده کنید...!
str_ireplace('http://','',$url);
البته دقت کنید اون i قبل از replace برای حساس بودن به حروف بزرگ و کوچیکه...!
البته استفاده از str_replace و یا str_ireplace می تونه مشکل رو حل کنه اما همچنین ممکنه باعث بروز اشکالات پیش بینی نشده ایی هم بشه.
به عناون مثال:
$url = 'http://www.site.com/?url=http://www.site.com/somepgae.html';
echo str_ireplace('http://', '', $url);
// result is www.site.com/?url=www.site.com/somepgae.html';
این درحالیه که http نباید از http://www.site.com/somepgae.html حذف می شد.
راه حل اینه که از preg_replace استفاده بشه تا مطابقت رشته تنها در ابتدای آدرس بررسی بشه.
$url = 'http://www.site.com/?url=http://www.site.com/somepgae.html';
echo preg_replace('^http\:\/\/', '', $url);
// result is www.site.com/?url=http://www.site.com/somepgae.html';
--------------------------------------
توصیه هایی در دنیای وب و دیجیتال