Regulární výraz pro zkrácení odkazu – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Regulární výraz pro zkrácení odkazu – PHP – Fórum – Programujte.comRegulární výraz pro zkrácení odkazu – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Rayen
~ Anonymní uživatel
2 příspěvky
1. 12. 2012   #1
-
0
-

 Dobrý den, potřeboval bych pomoct se starším scriptem na zkrácení odkazu s ereg_replace převedení na novější výraz preg + se mi nedaří, aby odkaz byl otevřen v novým okně. Díky.

$slova = explode(" ",$zprava);
$zprava = ""; 
      for($i = 0; $i < sizeof($slova); $i++) {
        if(@eregi("(http://[^ ]+\.[^ ]+)", $slova[$i])) {
          $cast = substr($slova[$i], 0, 20);
          if(strlen($slova[$i]) > 20) {
            $odkaz = "<a href=\"\\1\">$cast&hellip;</a>";
          } 
          else {
            $odkaz = "<a href=\"\\1\">odkaz &raquo;</a>";
          }
          $slova[$i] = ereg_replace("(http://[^ ]+\.[^ ]+)", " $odkaz ", $slova[$i]);
        } 
        else {
          $slova[$i] = wordwrap($slova[$i], 30, " ", 1);
        }
        $zprava .= " ".$slova[$i];
      }
Nahlásit jako SPAM
IP: 109.108.104.–
Reklama
Reklama
Rayen
~ Anonymní uživatel
2 příspěvky
9. 12. 2012   #2
-
0
-

Tak jsem to nakonec vyřešil sám  

      $slova = explode(" ",$zprava);
      $zprava = ""; 
      for($i = 0; $i < sizeof($slova); $i++) {
        if(preg_match("#(http://[^ ]+\.[^ ]+)#", $slova[$i])) {
          $cast = substr($slova[$i], 0, 20);
          if(strlen($slova[$i]) > 20) {
            $odkaz = "<a href=\"\\1\" target=\"\\_blank\">$cast&hellip;</a>";
          } else {
            $odkaz = "<a href=\"\\1\" target=\"\\_blank\">$cast</a>";
          }
          $slova[$i] = preg_replace("#(http://[^ ]+\.[^ ]+)#", " $odkaz ", $slova[$i]);
        } else {
            $slova[$i] = wordwrap($slova[$i], 30, " ", 1);
        }
        $zprava .= " ".$slova[$i];
      }
Nahlásit jako SPAM
IP: 109.108.104.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 43 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý