php中数组首字符过滤功能代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
$array = array(
'abcd',
'abcde',
'bcde',
'cdef',
'defg',
'defgh'
);
$str = '~'.implode('~',$array).'~';
$word = $_GET['word']; //url = xxx.php?word=a
preg_match_all("/~({$word}(?:[^~]*))/i",$str,$matches);
var_dump($matches[1]);

//输出
//array(2) { [0]=> string(4) "abcd" [1]=> string(5) "abcde" }
//End_php

另:这段代码发现了一个奇怪的问题:分隔符使用','(逗号)的时候会出现问题。

相关文章

PHP中检查isset()和!empty()函数的必要性

isset()函数是PHP中的内置函数,它检查变量是否已设置且不为NULL。此函数还检查声明的变量,数组或数组键是否具有空值,如果是,isset()返回false,它在所有其他可能的情况...

PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等)

浅谈Php安全和防Sql注入,防止Xss攻击,防盗链,防CSRF 前言: 首先,笔者不是web安全的专家,所以这不是web安全方面专家级文章,而是学习笔记、细心总结文章,里面有些是我们p...

PHP弱类型的安全问题详细总结

前言 相信大家都知道PHP是世界上最好的语言,PHP本身的问题也可以算作是web安全的一个方面。在PHP中的特性就是弱类型,以及内置函数对于传入参数的松散处理。 这篇文章主要就是记录我在...

详谈PHP中的密码安全性Password Hashing

如果你还在用md5加密,建议看看下方密码加密和验证方式。 先看一个简单的Password Hashing例子: <?php //require 'password....

pdo中使用参数化查询sql

方法 bindParam() 和 bindValue() 非常相似。 唯一的区别就是前者使用一个PHP变量绑定参数,而后者使用一个值。 所以使用bindParam是第二个参数只能用变量名...