0

如何将波斯语或阿拉伯语句子替换为随机生成的英语单词或句子。例如,我有一个如下的网址

www.example.com/arti/19029/متی-نتها-نیبتی/new

我想将其转换如下

www.example.com/arti/19029/xideo-oiend/new

xideo-oiend 只是一个随机生成的单词,与 متی-نتها-نیبتی 无关。

仅将波斯语或阿拉伯语句子替换为英语随机生成的句子。如何在 php.ini 中找到它的阿拉伯语句子。

4

2 回答 2

1

没有什么比“阿拉伯标签”或您可以评估的字符串上的东西。相反,您必须自己定义一个检测例程,但这应该不会太难:

在 php 中,您可以在超全局 $_SERVER var 中获得请求的 url(/arti/19029/متی-نتها-نیبتی/new在您的示例中)。您可以使用正则表达式对其进行剖析(查看preg_match()函数)并提取与某些特征匹配的字符串部分。在您的情况下,您必须在字符串中查找一定范围的字符,即阿拉伯字符。

如果字符串的阿拉伯部分总是出现在请求的 url 内的相同位置,事情会变得容易得多。然后您不必检查某些字符,而是可以使用更简单的模式搜索。

于 2013-08-25T17:45:57.557 回答
0

当然......但它有点慢,我正在寻找替代解决方案。首先我使用了爆炸功能:

$pieces  = explode('/',$url); 

然后我使用implode()函数 witharray_slice()来获取 URL 的第一部分(直到阿拉伯语单词的 URL):

$part1 = implode('/', array_slice($pieces, 0, 3));

然后我再次使用implode()函数array_slice()来获取 URL 的最后一部分

$part2 = implode('/', array_slice($pieces, 4, 5));

最后我在中间加入了随机生成字符串函数:

    $url = $part1.'/'.RandomString().'/'.$part2

这可能是愚蠢的解决方案,但它奏效了。如果您有更好的解决方案,请发布。

于 2013-08-26T22:02:47.863 回答