如何在CodeIgniter中检查URL是否对挪威字符有效



我正在在CodeIgniter中构建一个应用程序,并尝试使用Form验证库中的valid_url检查域是否有效(例如"Hæi.no")。由于不允许挪威角色,因此这不起作用。检查有效URL并允许挪威字符的最佳工作是什么,例如"æøå","?

您可以创建自己的表单验证库,我个人认为比使用回调更优雅。

在您的控制器中

$this->load->library(array('form_validation', 'My_form_validation'));

这确保两个库都被加载,您都需要它们,因为MY_Form_validation扩展了CI_Form_validation

/application/libraries/my_form_validation.php

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class MY_Form_validation extends CI_Form_validation
{
    /**
     * Reference to the CodeIgniter instance
     *
     * @var object
     */
    protected $CI;
    function __construct($config = array())
    {
        $this->CI =& get_instance();
        parent::__construct($config);
    }
    function series_exists($series_id)
    {
        $this->CI->db
            ->select('COUNT(`id`)')
            ->where('id', $series_id);
        $rows = $this->CI->db->get('series')->result()[0];
        return $rows == 1;
    }
}

您可以在此示例中看到series_exists功能,这将被称为正常验证规则,因为它仅采用一个参数。您将用自己的功能替换它,该功能必须具有唯一名称,例如my_valid_url

将函数名称添加到您的验证规则中,在我的示例中,它看起来像这样 'required|integer|series_exists'

最新更新