我想在mysql数据库的文本字段中存储一些正则表达式.目前我最好的想法是为我的分隔符使用不规则的符号模式.例:
$delim = '!@#$%';
$regex1 = '/^(.+)$/';
$regex2 = '/.(.+)./';
$regex3 = '/(\s+):\/\//';
$string = $regex1.$delim.$regex2.$delim.$regex3;
然后$string将存储在数据库中.要检索我会使用类似的东西:
$array = explode($delim,$string);
我想知道的是,如果有一种更好,更准确的方法,而不仅仅是希望我的分隔符不出现在其中一个正则表达式中.
解决方法:
是的,更好的方式.将它们放入数据库时使用serialize()
或json_encode()
,将它们拉出时使用unserialize()
或json_decode()
.
这样做的好处是不会以灾难性的方式失败,最终会让你永远地进行调试.
<?PHP
$string = json_encode( array( $regex1, $regex2, $regex3 ) );
// Later
$array = json_decode( $string );
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。