Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> До собрать адрес 
:(
    Опции темы
Silent_s
Дата 16.3.2009, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 2.12.2007
Где: Москва

Репутация: нет
Всего: 0



Есть массив адресов
Код

 "http://host.ru/forum",
   "viewforum_new.php?f=10",
   "http://host.ru/forum/profile_new.php?mode=register&agreed=true",
   "http://host.ru/forum/viewtopic_new.php?t=20",
    "http://host.ru/forum",
    "/forum/viewtopic_new.php?t=52445&page=1",
   "/forum/viewtopic_new.php?t=52445&page=2",
     "viewtopic_new.php?t=52445&all=last#end",
    "viewforum_new.php?f=10"


Как мне проверить что адрес без домена и как можно мне дополнить домен?
Адреса без домена могут быть со слешом и без...
--------------------
Мой блог
PM MAIL   Вверх
azesmcar
Дата 16.3.2009, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 12
Всего: 211



Код

foreach ($arr as $a) {
   if (substr($a, 0, 7) == 'http://')
      //добавляем домейн
}


например так..можно и с помощью regexp
PM   Вверх
Silent_s
Дата 16.3.2009, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 2.12.2007
Где: Москва

Репутация: нет
Всего: 0



Сенкс
а как можно сделать с помощью регулярок?

--------------------
Мой блог
PM MAIL   Вверх
azesmcar
Дата 16.3.2009, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 12
Всего: 211



Silent_s, не знаю  smile я их знаю на уровне копи-паста..нужно покопаться, но думаю тут без регулярок побыстрее будет..одна проверка всего..
PM   Вверх
MoLeX
Дата 16.3.2009, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



azesmcar
а если адрес будет https://site.com?
то после обработки
Код

foreach ($arr as $a) {
   if (substr($a, 0, 7) == 'http://')
      //добавляем домейн
}


мы получим http://https://site.com
 smile 


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
azesmcar
Дата 16.3.2009, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 12
Всего: 211



MoLeX, не возражаю, но нигде не сказано что такое возможно, еще может быть wap...

можно и так
Код

foreach ($arr as $a) {
   if (substr($a, 0, 7) != 'http://' && substr($a, 0, 8) != 'https://')
      //добавляем домейн
}


Добавлено @ 13:27
или так  smile 
Код

$addrprefix = array('http://', 'https://');

foreach ($arr as $a) {
   foreach ($addrprefix as $prefix) {
      if (substr($a, 0, strlen($prefix)) != $prefix) {
         //добавляем домейн
      }
   }
}


Это сообщение отредактировал(а) azesmcar - 16.3.2009, 13:29
PM   Вверх
enof
Дата 16.3.2009, 13:42 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Код

foreach($arr as &$v)
    $v = preg_replace("#^(?!\w+://)(?:/)?(.*)$#u", "http://$domain/$1", $v);

PM MAIL ICQ Skype   Вверх
azesmcar
Дата 16.3.2009, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 12
Всего: 211



Цитата

foreach($arr as &$v)
    $v = preg_replace("#^(?!\w+://)(?:/)?(.*)$#u", "http://$domain/$1", $v);


я этого никогда не выучу, хуже brainfuck -а  smile  smile 
PM   Вверх
enof
Дата 16.3.2009, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



azesmcar, ниче сложного нет smile 

там пара лишних символов, без них это выглядит так:
Код

"#^(?!\w+://)/?(.*)$#u"


Это сообщение отредактировал(а) enof - 16.3.2009, 13:58
PM MAIL ICQ Skype   Вверх
azesmcar
Дата 16.3.2009, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 12
Всего: 211



Цитата

azesmcar, ниче сложного нет smile 

да знаю, все легко если учить, просто не так уж сильно надо пока что..до сих пор копипастом вроде бы обходился, стандартных проверок в интернете полно

Это сообщение отредактировал(а) azesmcar - 16.3.2009, 14:00
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1254 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.