tags:

views:

33

answers:

2

hey guys im working on a task to make my story's links like this

http://localhost/mycms/article/test/

i used :

 $mtitle = str_replace("\"", "'", $title);
 $slug_title = mysql_real_escape_string($mtitle);

and a href link to show story's title

in other php file i used two arrays as a moderator for google tab

$urlin = array(
"'(?<!/)modules.php\?name=News&amp;file=article&amp;title=([a-zA-Z0-9_-]*)'",
"'(?<!/)modules.php\?name=News&amp;file=tags&tag=([a-zA-Z0-9_-]*)'"
);

$urlout = array(
"article/\\1/",
"article/tags/"
);

and it automatically change urls

but when it goes to RTL languages such as arabic , it failed

e.g. :

http://localhost/CMS/article//صفحات

while it should be like this :

http://localhost/CMS/article/صفحات/

i tried different ways to correct this but none of them worked

A: 

I suggest splitting the URL, and then replace each part, then re assemble the string as one process.

farzad
thanks any example ?
Mac Taylor
A: 

Arabic is right to left and English is left to right, could this be any part of the problem? Just guessing.

If you want to break apart the elements use

$urlparts=explode("/",$url);

$urlparts is now an array that has each element.

$urlparts[0]="http:";
$urlparts[1]=""; // (because of //)
$urlparts[2]="localhost";
$urlparts[3]="CMS";
$urlparts[4]="article";
$urlparts[5]=""; // (because of //)
$urlparts[6]="صفحات"; //(persian for pages)

You can put it back together I presume?

SethCoder
sure it is , problem is how to avoid it
Mac Taylor
Not sure you can avoid it, but you could try using string strrev ( string $string );on that one part and see if it works.
SethCoder
Hope that update to the answer helps you.
SethCoder