如何将波斯语或阿拉伯语句子替换为随机生成的英语单词或句子。 例如,我有一个网址如下
www.example.com/arti/19029/متی-نتها-نیبتی/new
我想将其转换为如下
www.example.com/arti/19029/xideo-oiend/new
xideo-oiend只是一个随机生成的单词,它与متی-نتها-نیبتی没有任何关系。
仅将波斯语或阿拉伯语句子替换为英语随机生成的句子。如何在php中找到它的阿拉伯语句子。
答案 0 :(得分:1)
没有什么比“阿拉伯标签”或字符串上的东西可以评估。相反,你必须自己定义一个检测程序,尽管这不应该太难:
在php中,您可以在超全局$ _SERVER var中获取请求的URL(示例中为/arti/19029/متی-نتها-نیبتی/new
)。您可以使用正则表达式来区分它(查看preg_match()
函数)并提取符合某些特征的字符串部分。在您的情况下,您必须在字符串中查找特定范围的字符,即阿拉伯字符。
如果字符串的阿拉伯语部分始终出现在请求的URL内的相同位置,事情会变得容易得多。然后,您不必检查某些字符,但可以使用更简单的模式搜索。
答案 1 :(得分:0)
当然......但它有点慢,我正在寻找替代解决方案。 首先我使用了爆炸功能:
$pieces = explode('/',$url);
然后我使用implode()
函数和array_slice()
来获取网址的第一部分(URL直到阿拉伯语单词):
$part1 = implode('/', array_slice($pieces, 0, 3));
然后我再次使用implode()
函数和array_slice()
来获取网址的最后一部分
$part2 = implode('/', array_slice($pieces, 4, 5));
最后我在中间用随机生成字符串函数加入了它们:
$url = $part1.'/'.RandomString().'/'.$part2
这可能是愚蠢的解决方案,但它有效。如果您有更好的解决方案,请发布。