ここにいくつかのオプションがあります。この文字列と関数をどこでどのように使用しているかによって、どちらかが他のものよりも優れている場合があります。
設定
値をconfigとして保存できますapplication/config/config.php
$config['filter_regex'] = 'yourReallyLongString';
プライマリ構成は CodeIgniter によって自動ロードされるため、次のように使用できます。
$filterRegex = $this->config->item('filter_regex');
if(preg_match($filterRegex, $subject))
{
databaseStuffHere();
}
絶え間ない
この長い文字列をいくつかの場所で使用していて、グローバル アクセスが便利な場合は、 で定数として定義できますapplication/config/constants.php
。また、誤って値を再定義するのを防ぎます。
define('FILTER_REGEX', 'yourReallyLongString');
次に、次のように関数で使用します。
$filterRegex = FILTER_REGEX;
if(preg_match($filterRegex, $subject))
{
databaseStuffHere();
}
ヘルパー
最後に、 helperを使用できます。必要に応じてヘルパーをロードするか、自動ロードすることができます。で独自のヘルパーを作成できますapplication/helpers/
。次のようになります。
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
if ( ! function_exists('filter_slurs'))
{
function filter_slurs($subject = '')
{
$filter_regex = 'yourReallyLongString';
if (preg_match($filter_regex, $subject))
{
return FALSE;
}
else
{
return TRUE;
}
}
}
これを処理する関数があると、コードを理解しやすくなり、より意味のあるものになる可能性があります。たとえば、コントローラーでは、次のように使用できます。
$this->load->helper('slur_filter_helper'); //assumes the helper file is: slur_filter_helper.php
if(filter_slurs($subject))
{
//do something
}
else
{
//do something else
}