在CodeIgniter中不起作用的阿拉伯字符URL

时间:2016-11-06 08:15:29

标签: php regex codeigniter nginx

我对CodeIgniter应用程序有一些奇怪的问题。

App是小型论坛用户可以添加主题等。

我有这个从标题重写网址:

 $this->load->helper('string');
                $es = preg_replace('/&([^#])(?![a-z]{1,8};)/i', '', $this->input->post('title'));
                $es = url_title(preg_replace('~[^\\pL0-9_]+~u', '-', $es), '-', TRUE);
                $slug = $this->tec->slug( ! empty($es) ? $es : random_string('alnum', 4));

如果标题是阿拉伯语,一切都会好的,主题会发布,并将添加到阿拉伯语网址的数据库,并将正常出现在论坛主页 但如果点击打开主题网址将无法正常工作

我尝试使用空permitted_uri_chars来接受所有字符,但有些问题:

$config['permitted_uri_chars'] = '';

并试图添加所有阿拉伯字符没有什么不同:

$arabic = 'اأآؤءئبتثجحخدذرزسشـصضطظعغفقكلمنهوية'; 
$config['permitted_uri_chars'] = $arabic.' a-z 0-9~%.:&_\-\=';

charset在配置文件中是utf-8。

$config['charset'] = 'UTF-8';

和数据库也。

'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',

我的网络服务器是Lemp 16.04。

0 个答案:

没有答案