我在一个数组中有300个字符串,我想比较一个给定的字符串是否在数组中。
例如,要比较的字符串是"blabla"
。如果这个字符串存在于包含300个字符串的数组中,则执行一些操作。为此,我将使用php函数:in_array();
现在,我的问题是:我在哪里存储这个巨大的数组?在文件中?如果是,我将文件存储在哪里?symfony在管理这个吗?
假设你的数组是固定的,不会改变…
final class StringProvider
{
const strings = array(
// ... array here
)
public function match($string)
{
return in_array($string,self::strings);
}
}
用
访问常量StringProvider::strings
…或者使用
函数$stringProvider = new StringProvider();
if ( $stringProvider->match($string) ) {
// do stuff.
}
使用Zend OPCache或APC将文件存储在内存中…