login  Naam:   Wachtwoord: 
Registreer je!
 Forum

(3 regels) js naar php omzetten (Opgelost)

Offline Emonk - 26/08/2011 17:43
Avatar van EmonkLid Beste mensen,

Ik heb de volgende javascript code:
  1. function tweetify(text) {
  2. text = text.replace(/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:(?:[^\s()<>.]+[.]?)+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?Ã&#65533;�Ã&#65533;«Ã&#65533;�Ã&#65533;»Ã&#65533;¢ï¿½ï¿½Ã&#65533;¢ï¿½ï¿½Ã&#65533;¢ï¿½ï¿½Ã&#65533;¢ï¿½ï¿½]))/gi,
  3. "<a target=_blank href=$1>$1</a>");
  4. text = text.replace(/[\@]+([A-Za-z0-9-_]+)/gi, "<a target=_blank href=http://twitter.com/$1>@$1</a>");
  5. return text.replace(/(?:^| )[\#]+([A-Za-z0-9-_]+)/gi, " <a target=_blank href=http://search.twitter.com/search?q=&tag=$1&lang=all>#$1</a>");
  6. }


En nu wil ik een php code die hetzelfde doet, zodat ik een script met deze werking kan gebruiken in een php functie. Hoe doe ik dit?

Alvast bedankt!

4 antwoorden

Gesponsorde links
Offline Dlol - 26/08/2011 18:16
Avatar van Dlol Lid Replacen adhv een regex wordt in php:

$text = preg_replace($pattern, $replacement, $text);

Het pattern wordt in tegenstelling tot js als een gewone string opgegeven. Voorbeeldje:

  1. var text = "123".replace(/23$/, "24");


wordt:

  1. $text = preg_replace('/23$/', '24', '123');


Meer info ook op: http://be2.php....eplace.php
Offline Emonk - 27/08/2011 14:00
Avatar van Emonk Lid Dank!

Ik heb nu:

  1. function tweetify($string) {
  2. $returnstring = preg_replace('/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:(?:[^\s()<>.]+[.]?)+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?Ã&#65533;�Ã&#65533;«Ã&#65533;�Ã&#65533;»Ã&#65533;¢ï¿½ï¿½Ã&#65533;¢ï¿½ï¿½Ã&#65533;¢ï¿½ï¿½Ã&#65533;¢ï¿½ï¿½]))/gi','<a target=_blank href=$1>$1</a>',$string);
  3. $returnstring = preg_replace('/[\@]+([A-Za-z0-9-_]+)/gi','<a target=_blank href=http://twitter.com/$1>@$1</a>',$returnstring);
  4. $returnstring = preg_replace('/(?:^| )[\#]+([A-Za-z0-9-_]+)/gi','<a target=_blank href=http://search.twitter.com/search?q=&tag=$1&lang=all>#$1</a>',$returnstring);
  5. return $returnstring;
  6. }


Maar... het werkt niet!
De error die ik krijg:

Warning: preg_replace() [function.preg-replace]: Unknown modifier 'g' in C:\wamp\www\tests\twitter\tweetify.php on line 3

Hoe verhelp ik dat?
Offline pijke - 27/08/2011 14:31
Avatar van pijke Gouden medaille

Lid
waarschijnlijk slikt preg de /gi op het einde niet.
probeer eens /i.
Bedankt door: Emonk
Offline Emonk - 27/08/2011 14:34
Avatar van Emonk Lid Wauw, top! Bedankt!
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.2s