• 关于

    php正则函数

    的搜索结果

问题

为什么 PHP 的`preg`要求正则有分隔符?

难道是因为跟Perl学的?可是Perl是内嵌正则表达式的语言,用分隔符标明正则很自然。PHP既然是用preg系列函数处理,为什么还要用分隔符? Python下也是用函数处理(re模块提供),不需要分隔符。 pattern = re.comp...
落地花开啦 2019-12-01 20:01:56 888 浏览量 回答数 1

问题

php preg_match()函数 的正则是什么?

求一个 可以用 php preg_match()函数 验证字符串自能包含 中英文,数字,还有'-','_' 的正则...
小旋风柴进 2019-12-01 20:10:44 877 浏览量 回答数 1

回答

ThinkPHP 自动验证定义的附加规则如下:regex:使用正则进行验证(默认)unique:验证唯一性confirm:验证表单中的两个字段是否相同equal:验证是否等于某个值in:验证是否在某个范围内function:使用函数验证callback:使用方法验证自动验证例子各种自动验证参考例子如下:// 默认情况下用正则进行验证 array('title','require','标题不能为空。'), array('order','number','排序必须是数字。',2), array('email','email','邮箱格式不符合要求。'), array('qq','qq','QQ号码不正确。'), // 在新增的时候验证标题title字段是否唯一 array('title','','标题已经存在!',0,'unique',1), // 验证确认密码是否和密码一致 array('repassword','password','确认密码不正确。',0,'confirm'), // 验证class填写的值为 一班 array('class','一班','班级必须填写一班。',0,'equal'), // 当值不为空的时候判断是否在一个范围内 array('value',array(1,2,3),'值的范围不正确。',2,'in'), // 自定义函数验证用户名格式 array('username','checkName','用户名格式不正确。',0,'function'), // 在注册或更改资料是调用 checkEmail 方法检查邮箱 array('email','checkEmail',1,'callback'), 使用正则表达式(regex)验证上述几类附加规则中,使用正则表达式是经常使用的,也是系统默认的验证附加规则。系统内置了如下正则检测规则:require(必须)、email(邮箱格式)、url(URL地址)、currency(货币)、number(数字)、qq(QQ号码)、english(英文字符)。这些附加规则可以直接使用,如果这些附加规则无法满足要求,可以使用自定义的正则规则:array('username','/^{3,15}$/','用户名不符合要求。'),该规则要求用户名只能为英文字符及下划线和数字组成,且长度为3-15个字节。要了解更多的正则表达式规则参见《PHP 常用正则表达式整理》。使用自定义函数(function)验证使用自定义函数验证附加规则,函数可以是 Common/common.php 里的自定义函数,也可以是 PHP 的内置函数: class UserModel extends Model{ protected $_validate = array( array('username','checkName','用户名不符合要求。',0,'function'), }; } 自定义 checkName 函数: function checkName($username){ if(!preg_match('/^{3,15}$/', $username)){ return false; }else{ return true; } } 提示:对于用户名的规则可以直接使用正则验证而无需函数,在此只是为了演示自定义函数的验证的用法而已。使用方法(callback)验证ThinkPHP 自动验证还支持调用当前 Model 类的一个方法来进行验证。 class UserModel extends Model{ protected $_validate = array( array('email','checkEmail','邮箱已经存在。',1,'callback'), }; // checkEmail方法 2 protected function checkEmail(){ $User=new Model('User'); // 新用户注册,验证唯一 if(empty($_POST<'uid'>)){ if($user->getByEmail($_POST<'email'>)){ return false; }else{ return true; } }else{ // 更改资料判断邮箱与其他人的邮箱是否相同 if($user->where("uid!={$_POST<'uid'>} and email='{$_POST<'email'>}'")->find()){ return false; }else{ return true; } } } } 当 checkEmail 方法返回 false 时,验证就不通过。可见 ThinkPHP 自动验证功能十分强大,能满足对表单的各种验证要求。
小旋风柴进 2019-12-02 02:02:35 0 浏览量 回答数 0

问题

PHP邮箱地址验证问题

邮箱地址验证是个很常见的问题,许多框架也内置了验证类,但是我见过的框架几乎都是通过正则表达式来验证的。PHP 不是有原生的验证函数,并且拥有 E-mail 地址验证功能吗? if (filter_var("xxx@xxx.com", FIL...
吴孟桥 2019-12-01 19:47:19 999 浏览量 回答数 1

回答

你可以试试PHP的执行命令的函数来执行下ping,看看有没有问题。 搞定。。好像原因是空格,,加了处理函数就没问题了,,,,地址是通过正则匹配得到的。那个函数。。。大神
爱吃鱼的程序员 2020-06-09 11:50:18 0 浏览量 回答数 0

回答

这种东西何必要用正则?直接搜索那两个字符串,取中间就行了回复<aclass='referer'target='_blank'>@leo108:我用的explode,先分出左侧的,再分出右侧的。总体结构是这样的<li><a因为最后2-3个对方做了防采集,目录页文字标题内容打乱了,但是内容页的文字标题内容是正确的。所以我现在还需要匹配最后2项内容,然后取出网址,再获取一次内容页中的标题。回复<aclass='referer'target='_blank'>@Kevin_Silence:字符串搜索字符串截取,这些函数都有的吧溢出了,PHP挂了。。PHP的正则有回溯次数限制 要么别用正则; 要么优化正则; 要么修改PHP配置,放宽限制,这个最简单我用ini_set('pcre.backtrack_limit',999999999);不起作用如果说你批量的获取网页信息可以使用simple_html_dom;  如果只是从网页哪一些简单的ID或者有明显标记的内容就用正则吧,自己感觉正则如果用的好对于这种需求实现起来很容易很好。标记下simple_html_dom。学习下这个。百度下小偷程序应该解决你的需求谢谢。
爱吃鱼的程序员 2020-06-22 20:33:22 0 浏览量 回答数 0

回答

没用过Zend,不过我想ZF2只不过是简单的把闭包函数的代码复制到不同格式的配置文件里,最后肯定都是要重新写回到PHP代码格式的缓存(可以直接运行),不然运行时去解析配置文件,效率太差。实在需要序列化,可以用反射(Reflection),并直接操作代码文件获得上下文信息:/** * 创建一个反射: */ $reflection = new ReflectionFunction($closure); /** * 参数可以直接得到了: */ $params = $reflection->getParameters(); /** * 获得Closure的函数体和use变量,形如: * function($arg1, $arg2, ...) use ($val1, $val2, ...) { * // 要获得这个部分的代码! * } * 办法很多,你可以直接用正则、字符串查找或者Tokenizer,等等等等。 * 比如可以先从reflection里得到函数的开始行和结束行: */ $startLine = $reflection->getStartLine(); $endLine = $reflection->getEndLine(); // 然后用str*这个,str*那个的函数来清理,细节不写了: $usedVars = use变量们; $closureBody = 函数体; // ...至此params,usedVars,closureBody等等只是数组和字符串了。
落地花开啦 2019-12-02 02:42:44 0 浏览量 回答数 0

回答

PHP实现获取域名的方法参考。 方法一(用 系统变量)    //缺点不使用传递过来的地址和不支持系统变量的主机    echo $_SERVER['HTTP_HOST']; 方法二(用自带函数)    $url = 'http://www.jb51.net/index.php?referer=jb51.net';    $arr_url = parse_url($url);    echo $arr_url['host']; 方法三( 自己写函数)    function getdomain($url)    {      $url = str_replace('http://',”,$url);  //如果有http前缀,则去掉      $pos = strpos($url,'/');      if($pos === false)       {          return $url;       }else      {          return substr($url, 0, $pos);       }    }    echo getdomain($url); 方法四(用正则)    preg_match("/^(http://)?([^/]+)/i", $url, $arr_domain);    echo $arr_domain[2];
小旋风柴进 2019-12-02 02:02:42 0 浏览量 回答数 0

回答

false函数没开!Xiuno bbs有些函数是要开的,这个程序我建议用L系统 ------------------------- 回 2楼(jack0927) 的帖子 我记得Xiuno bbs的教程有提过。应该在PHP.INI.官方好像有教程!! 你是什么系统? ------------------------- 回 4楼(jack0927) 的帖子 PHP 框架:XiunoPHP 3.0 尽可能少的采用 OO,大部分函数式封装,有利于 HHVM 编译 / opcode 缓存,完美支持 PHP7 ,并且倡导以下原则:     1. 不要 include 变量     2. 不要采用 eval(), 正则表达式 e 修饰符     3. 不要采用 autoload     4. 不要采用 $$var 多重变量     5. 不要使用 PHP 高级特性 __call __set __get 等魔术方法     6. 尽量采用函数封装功能,通过前缀区分模块。 ------------------------- 回 4楼(jack0927) 的帖子 Xiuno bbs这个不错!!但安装上比较麻烦!记得我好像有发过插件 现在都更新好多版本了
梦丫头 2019-12-02 02:50:28 0 浏览量 回答数 0

问题

PHP一段正则表达式匹配结果不一致的问题

我自定的函数如下,功能是匹配出特殊字符: function hasSpecialChar($subject) { $pattern = "/[`~!@#$%^&amp;*()+=|{}':;',\\[\\].&lt;&gt;\/?~...
落地花开啦 2019-12-01 20:05:08 1007 浏览量 回答数 1

回答

WordPress完整的apache .htaccess是这样的<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>nginx, 则是location / { try_files $uri $uri/ /index.php?$args; }两者都是实现一个目地:将所有的uri请求转给index.php. index.php作为入口, 在某个时候调用wp-includes/class-wp.php,由parse_request函数负责解析当前的uri.我举个简单的例子,当你的permalink structure设置为/%postname%/%post_id%.html然后,wp内部生成相对应的正则, ([^/]+)/([0-9]+).html(/[0-9]+)?/?$访问http://www.test.com/i-am-a-post/123.html时,list( $req_uri ) = explode( '?', $_SERVER['REQUEST_URI'] ); $req_uri = trim($req_uri, '/');这时,$req_uri的值为i-am-a-post/123.html. 与permalink structure的正则匹配上了,获取后面的id,也就是123, 然后就是get_post了...这个例子是非常简化版的wp解析uri过程.大部分程序,包括框架,也是这样实现你所谓的"伪静态".一般,大家都称这个过程为routing. 由两个部分组成: parser 和dispatcher不推荐阅读wp代码, 尤其是新手.补充下:wp生成的正则 ([^/]+)/([0-9]+).html(/[0-9]+)?/?$.后面的(/[0-9]+)?/?$ 是用来匹配分页的.
西秦说云 2019-12-02 01:33:15 0 浏览量 回答数 0

问题

如何在MySQL中执行正则表达式替换?

我有一张约有50万行的表格;varchar(255)UTF8列filename包含一个文件名; 我正在尝试从文件名中删除各种奇怪的字符-以为我会使用字符类: [^a-z...
保持可爱mmm 2020-05-08 10:28:10 0 浏览量 回答数 1

问题

PHP用户注册调试时preg_match( )发生错误

在用户名注册时,我加入了正则表达式验证,可是在preg_match()函数进行匹配却总是出错代码如下://在注册函数库里编写的函数: function check($username){ $pattern = '/[\&lt;&gt...
小旋风柴进 2019-12-01 20:10:01 1079 浏览量 回答数 1

回答

1、$tmpArray['username'] = check($_POST['username']); 函数都没返回值,怎么用呢_2、php报错关浏览器什么时事?前后端弄混了吧3、 $pattern = '/[\<>\'\"\ \ \]/' 这个正则有错误,]代表匹配]所以才会报Compilation failed: missing terminating ] for character class 的错误。最后,如果你用户名规则不是允许中文的,最好还是用白名单而不是
小旋风柴进 2019-12-02 02:00:28 0 浏览量 回答数 0

问题

EditPlus 3.x 配置PHP开发环境,报错

我Windows下的所有文件全是默认使用EditPlus打开的,再比较熟悉PHP以后,使用EditPlus还是比较舒服的,当然也可以通过插件和设置把EditPlus配置为可以动态查看帮助、代码调试和...
一枚小鲜肉帅哥 2020-05-27 21:25:35 9 浏览量 回答数 1

问题

EditPlus 3.x 配置PHP开发环境:报错

我Windows下的所有文件全是默认使用EditPlus打开的,再比较熟悉PHP以后,使用EditPlus还是比较舒服的,当然也可以通过插件和设置把EditPlus配置为可以动态查看帮助、代码调试和...
kun坤 2020-06-14 06:44:27 0 浏览量 回答数 1

问题

PHP Array to JSON Array using json_encode();

我已经编码了使用内置json_encode();函数制作的数组。我需要像这样的数组数组格式: [["Afghanistan",32,12],["Albania",32,12]] 但是ÿ...
保持可爱mmm 2020-02-09 11:29:06 0 浏览量 回答数 1

问题

EditPlus 3.x 配置PHP开发环境 - EditPlus报错

我Windows下的所有文件全是默认使用EditPlus打开的,再比较熟悉PHP以后,使用EditPlus还是比较舒服的,当然也可以通过插件和设置把EditPlus配置为可以动态查看帮助、代码调试和...
montos 2020-06-02 12:44:51 1 浏览量 回答数 1

问题

EditPlus 3.x 配置PHP开发环境-php报错

"我Windows下的所有文件全是默认使用EditPlus打开的,再比较熟悉PHP以后,使用EditPlus还是比较舒服的,当然也可以通过插件和设置把EditPlus配置为可以动态查看帮助、...
montos 2020-05-31 13:01:16 0 浏览量 回答数 1

问题

关于apache,nginx 对于 favicon.ico 的处理 请求报错 

 困扰我一天时间的BUG 好像就是由于 apache/nginx 在执行完相应的URL处理后,会在脚本末尾再执行一次 寻址favicon.ico 。 这是我对程序路由器分析 的来的。  这个东西我当时就觉得奇怪了。我在路由器...
kun坤 2020-06-01 10:09:40 2 浏览量 回答数 1

回答

感谢您提出有趣的问题。干得好: 它逃脱了危险人物, 您的概念完全错误。 实际上“危险人物”是神话,没有神话。和mysql_real_escape_string转义,但只是一个字符串定界符。从这个定义中,您可以得出它的局限性-仅适用于string。 但是,它仍然容易受到其他攻击的攻击,这些攻击可能包含安全字符,但可能有害于显示数据或在某些情况下恶意修改或删除数据。 您在这里混合了所有内容。 说到数据库, 对于字符串,它不是脆弱的。只要您的字符串被引用和转义,它们就不能 “恶意修改或删除数据”。* 对于其他数据类型data-是的,它没有用。但这不是因为它“不安全”,而是因为使用不当。 至于显示数据,我认为它在与PDO有关的问题中是题外话,因为PDO也与显示数据无关。 转义用户输入 ^^^另一个需要注意的错觉! 用户输入与转义绝对无关。从前一个定义中可以了解到,您必须转义字符串,而不是“用户输入”。因此,再次: 您有转义字符串,无论其来源如何 无论源如何,都无法逃脱其他类型的数据。 明白了吗? 现在,我希望您了解转义的局限性以及“危险人物”的误解。 据我了解,使用PDO /预备语句更安全 并不是的。 实际上,我们可以动态添加四个不同的查询部分: 一个字符串 一个号码 标识符 语法关键字。 因此,您可以看到转义仅涵盖一个问题。(但是,当然,如果将数字视为字符串(用引号引起来),则在适用时也可以使其安全) 而准备好的语句涵盖了-嗯-全部2个问题!很大;-) 对于其他两个问题,请参阅我的早期答案:在PHP中,在向数据库提交字符串时,我应该使用htmlspecialchars()还是使用正则表达式来处理非法字符? 现在,函数名称有所不同,因此我的mysql_query,mysql_fetch_array,mysql_num_rows等不再起作用。 那是PHP 用户的另一种严重的幻想,一种自然灾害,一场灾难: 即使使用旧的mysql驱动程序,也永远不要在其代码中使用裸露的API函数!必须将它们放在某种库函数中以供日常使用!(这并不是一个魔术,只是为了使代码更短,更少重复,防错,更一致和可读性更高)。 PDO也是如此! 现在再次提出您的问题。 但是通过使用它们是否可以消除使用mysql_real_escape_string之类的东西的需要? 是。 但是我认为这大致是应该从数据库中获取用户的想法。 不是要获取,而是要向查询添加任何数据! 如果我没记错的话,你必须在PDO:PARAM_STR之后给出一个长度 您可以,但不必。 现在,这一切安全吗? 在数据库安全方面,此代码中没有弱点。没什么要固定的。 为了确保显示安全-只需在该网站上搜索XSS关键字即可。 希望我对此事有所了解。 顺便说一句,对于长插入,您可以使用我有一天写的函数,使用PDO插入/更新帮助器函数 但是,我目前不使用准备好的语句,因为我喜欢使用自制的占位符,而不要使用上面提到的库。因此,要对付下面的riha发布的代码,该代码将短于这两行: $sql = 'SELECT * FROM users WHERE name=?s AND type=?s AND active=?i'; $data = $db->getRow($sql,$_GET['name'],'admin',1); 但是,当然,您也可以使用准备好的语句使用相同的代码。 (yes I am aware of the Schiflett's scaring tales)来源:stack overflow
保持可爱mmm 2020-05-18 11:12:08 0 浏览量 回答数 0

回答

utf-8是3,gbk/gb2312是2PHP自带的函数如strlen()、mb_strlen()都是通过计算字符串所占字节数来统计字符串长度的,一个英文字符占1字节。例:$enStr = ‘Hello,China!’; echo strlen($enStr); // 输出:12而中文则不然,做中文网站一般会选择两种编码:gbk/gb2312或是utf-8。utf-8能兼容更多的字符,所以受到很多站长的喜爱。gbk与utf-8对中文的编码不同,导致中文在gbk与utf-8编码下所占字节也有差异。gbk编码下每个中文字符所占字节为2,例:$zhStr = ‘您好,中国!’; echo strlen($zhStr); // 输出:12utf-8编码下每个中文字符所占字节为3,例:$zhStr = ‘您好,中国!’; echo strlen($zhStr); // 输出:18那么如何计算这组中文字符串的长度呢?有人可能会说gbk下获取中文字符串长度除以2,utf-8编码下除以3不就行了吗?但是您要考虑字符串并不老实,99%的情况会以中英混合的情况出现。这是WordPress中的一段代码,主要思想就是先用正则将字符串分解为个体单元,然后再计算单元的个数即字符串的长度,代码如下(只能处理utf-8编码下的字符串):$zhStr = ‘您好,中国!’; $str = ‘Hello,中国!’; // 计算中文字符串长度 function utf8_strlen($string = null) { // 将字符串分解为单元 preg_match_all(“/./us”, $string, $match); // 返回单元个数 return count($match[0]); } echo utf8_strlen($zhStr); // 输出:6 echo utf8_strlen($str); // 输出:9
小旋风柴进 2019-12-02 02:01:15 0 浏览量 回答数 0

回答

点击某一个函数名,会读取整个文档并弹出子窗口显示 - 这个无论是用原生js还是jquery都可以简单快速做到 定位到选择的函数 - 这个我认为做个锚就行了,如果不太清楚锚是干嘛的,可以参考一下这个  html 网页中的锚点的使用介绍 ######我知道锚,但问题是读取的文档是一个后台的方法类,无法也不能添加锚点...###### 你想搞一个方便从html页面中快速查看 某个语言的函数文档吧。 类似于语言手册一样方便,或者是自己项目文档。 例如,这样一个列表。 json_decode json_encode 点击后会用 js window.open, 指定大小的新窗口打对应的链接。 如 点击 json_decode 弹开 http://php.net/manual/zh/function.json-decode.php ######是的,但就是不知道怎样定位到点击的函数方法######phpDesigner编辑器, 可以直接关连手册. ######回复 @ZeronoFreya : 用 class来选择 例如列表 <div class="my_list"><ul><li>json_decode</li>....</ul></div> Jquery 选择就写成 $('.my_list > ul > li').click(function(){ open new window}); 或者直接就给函数列表加上某个class名 直接用 $('.my_li')选择就成了。 哈哈,不知道你问是不是这样的。######很遗憾不是的...简单来说就是读取一篇文档,但你不能修改其内容,里面有一些关键字,在html里有对应的链接(其实没对应),单击连接后定位到关键字所在行... 类似查找功能######回复 @ZeronoFreya : 就是百度百科中的关键词连接一样对吧。 又不能改html,你怎么知道一段html里某个是关键词。 保存文档没有这个关键词链接,只能在web返回页面时加上,才是你说不能修改html原因吧。 用php把关键词替换成超链接或者加个<span>标签。 ------------------------------------------------------ 问的不清楚,估计连你自己都不知道要写成什么样的。###### 引用来自“dworry”的评论回复 @ZeronoFreya : 就是百度百科中的关键词连接一样对吧。 又不能改html,你怎么知道一段html里某个是关键词。 保存文档没有这个关键词链接,只能在web返回页面时加上,才是你说不能修改html原因吧。 用php把关键词替换成超链接或者加个<span>标签。 ------------------------------------------------------ 问的不清楚,估计连你自己都不知道要写成什么样的。 无法编辑问题真的很.... 请原谅我不及格的语文成绩... 比如html中是这样的: <ul> <li>hahaha</li> <li>...</li> </ul> 后台控制器,不能改 ... function hahaha(){ ... } ... 当我点击<li>hahaha</li>时,会把整个后台控制器作为文本文档读取到变量中, 然后append到<mycode></mycode>,将包含此自定义标签的Div显示(模拟子窗口), 这时就显示了后台控制器的所有方法, 然后,定位到hahaha这个方法所在行... (别问我为啥这么做,上面要求的) 基本来说,就是做一个后台控制器方法的预览器,无修改能力,但必须要同步...所以采用了读取后台控制器文档的方法,所以绝对不能动后台控制器的脑筋 现在我能想到的就是一般文本编辑器所具有的查找功能,但不知道具体如何实现,百度一堆都是调用了一个函数,然后就没了,老实说,我想要的是思路...跑题了 ###### 引用来自“dworry”的评论 回复 @ZeronoFreya : 就是百度百科中的关键词连接一样对吧。 又不能改html,你怎么知道一段html里某个是关键词。 保存文档没有这个关键词链接,只能在web返回页面时加上,才是你说不能修改html原因吧。 用php把关键词替换成超链接或者加个<span>标签。 ------------------------------------------------------ 问的不清楚,估计连你自己都不知道要写成什么样的。 引用来自“ZeronoFreya”的评论 无法编辑问题真的很.... 请原谅我不及格的语文成绩... 比如html中是这样的: <ul> <li>hahaha</li> <li>...</li> </ul> 后台控制器,不能改 ... function hahaha(){ ... } ... 当我点击<li>hahaha</li>时,会把整个后台控制器作为文本文档读取到变量中, 然后append到<mycode></mycode>,将包含此自定义标签的Div显示(模拟子窗口), 这时就显示了后台控制器的所有方法, 然后,定位到hahaha这个方法所在行... (别问我为啥这么做,上面要求的) 基本来说,就是做一个后台控制器方法的预览器,无修改能力,但必须要同步...所以采用了读取后台控制器文档的方法,所以绝对不能动后台控制器的脑筋 现在我能想到的就是一般文本编辑器所具有的查找功能,但不知道具体如何实现,百度一堆都是调用了一个函数,然后就没了,老实说,我想要的是思路...跑题了 就是在线版的 ctage 你用过 sublime text + ctage 或者 是 gvim + ctage 代码跳转的。 ctage 在项目文档中生成 .tage 文本,(看下面是我项目中生成的.tage一段内容) 你可以根据这段内容来定位到要读取的代码。 secure_cookie .\system\core\Security.php /^ $secure_cookie = (config_item('cookie_secure') === TRUE) ? 1 : 0;$/;" v security .\system\core\Input.php /^ $this->security =& $SEC;$/;" v see_json .\application\helpers\common_helper.php /^ function see_json($json) {$/;" f segment .\system\core\URI.php /^ function segment($n, $no_result = FALSE)$/;" f segment_array .\system\core\URI.php /^ $segment_array = 'rsegment_array';$/;" v segment_array .\system\core\URI.php /^ $segment_array = 'segment_array';$/;" v 如我定义的 see_json 函数 第一列是函数名, 第二列是所在文件, 第三个是正则函数名所有行。 see_json    .\application\helpers\common_helper.php    /^    function see_json($json) {$/;"    f 可以在本地生成 .tage文件与代码一起提交上去。 只要写个php解析这个.tage文件最行了。 ######谢谢,我研究一下
kun坤 2020-06-06 15:30:57 0 浏览量 回答数 0

回答

60%能读  40%报一堆错,但你修正这40%报错的时间,可以用springboot重写一套出来###### 5.2 以下不兼容 5.3以上可以###### 看是怎样的具体情况了,大部分是兼容的,有些正则和数组函数新版本有变化。 你自己电脑安个xampp然后把项目丢html目录里浏览器里跑下看看错误提示。修正安全漏洞的话装个360webscan的js看看有哪些漏洞逐一修并不复杂。有java基础的话,php几天就能学会基本的。历史悠久的东西最好不要贸然毙掉。###### 目前方案是推倒重新做。因为这项目是php5.2版本对目前较性版本的php有很多方面根本不兼容。在wamp升级中发现旧代码中有很多是不兼容新版本的php语法规则。没办法了。###### 5.2的还做个鸡儿,PHP都快出8了,5.2都是10多年前的,就相当于你现在要写java1.4###### 只要这个项目一天在运行,就有存在的价值,既然运行这么久都没有问题,那我不知道你说的安全漏斗是你自己发现的还是项目运行中已经出现了问题,如果是你自己发现的,那就用闲时自己用java开发完毕后平移过去,别浪费公司的成本。如果是运行中已经出现问题,只要修补一下就好了。###### 先本地测试,找出问题,修改
kun坤 2020-06-08 11:20:20 0 浏览量 回答数 0

问题

IE 9 DOM 元素的 style.setProperty() 参数无效 Bug:报错

我自己在写 DOM/CSS 动画时,为了规避 CSS 属性名到 JS 属性名的驼峰命名法转换、cssText 正则替换时所带来的代码繁琐、性能损失,用原生 JavaScript 写的 Set_Style() 函数...
kun坤 2020-06-06 22:12:45 3 浏览量 回答数 1

问题

IE 9 DOM元素的style.setProperty()参数无效403.10 禁止访问:配置无效

我自己在写 DOM/CSS 动画时,为了规避 CSS 属性名到 JS 属性名的驼峰命名法转换、cssText 正则替换时所带来的代码繁琐、性能损失,用原生 JavaScript 写的 Set_Style() 函数...
kun坤 2020-05-27 18:06:49 7 浏览量 回答数 1

问题

PHP 以编译方式安装,编译参数详解析,报错

" <span style=""line-height: 18px; font-family: Arial, sans-serif, Helvetica, Tahoma;"">&l...
一枚小鲜肉帅哥 2020-06-16 22:55:17 1 浏览量 回答数 1

回答

PHP 5.6引入了第三个参数array_filter(),flag,你可以设置为ARRAY_FILTER_USE_KEY通过键,而不是值进行筛选: $my_array = ['foo' => 1, 'hello' => 'world']; $allowed = ['foo', 'bar']; $filtered = array_filter( $my_array, function ($key) use ($allowed) { return in_array($key, $allowed); }, ARRAY_FILTER_USE_KEY ); 显然,这不如优雅array_intersect_key($my_array, array_flip($allowed)),但是它确实提供了额外的灵活性,$allowed可以对键执行任意测试,例如可以包含正则表达式模式而不是纯字符串。 您还可以ARRAY_FILTER_USE_BOTH将值和键都传递给过滤器函数。这是一个基于第一个示例的示例,但请注意,我不建议您使用$allowed这种方式编码过滤规则: $my_array = ['foo' => 1, 'bar' => 'baz', 'hello' => 'wld']; $allowed = ['foo' => true, 'bar' => true, 'hello' => 'world']; $filtered = array_filter( $my_array, function ($val, $key) use ($allowed) { // N.b. $val, $key not $key, $val return isset($allowed[$key]) && ( $allowed[$key] === true || $allowed[$key] === $val ); }, ARRAY_FILTER_USE_BOTH ); // ['foo' => 1, 'bar' => 'baz'] 问题来源于stack overflow
保持可爱mmm 2020-01-15 16:32:07 0 浏览量 回答数 0

回答

[^\u4e00-\u9fa5] 这是一段匹配除了中文以外的字符串 http://regexpal.com/ 测试 http://unicodelookup.com (资料)###### function str_cut($string, $length, $dot = '...') { $strlen = strlen($string); if($strlen <= $length) return $string; $string = str_replace(array(' ', '&', '"', ''', '“', '”', '—', '<', '>', '·', '…'), array(' ', '&', '"', "'", '“', '”', '—', '<', '>', '·', '…'), $string); $strcut = ''; if(strtolower(CHARSET) == 'utf-8') { $n = $tn = $noc = 0; while($n < $strlen) { $t = ord($string[$n]); if($t == 9 || $t == 10 || (32 <= $t && $t <= 126)) { $tn = 1; $n++; $noc++; } elseif(194 <= $t && $t <= 223) { $tn = 2; $n += 2; $noc += 2; } elseif(224 <= $t && $t < 239) { $tn = 3; $n += 3; $noc += 2; } elseif(240 <= $t && $t <= 247) { $tn = 4; $n += 4; $noc += 2; } elseif(248 <= $t && $t <= 251) { $tn = 5; $n += 5; $noc += 2; } elseif($t == 252 || $t == 253) { $tn = 6; $n += 6; $noc += 2; } else { $n++; } if($noc >= $length) break; } if($noc > $length) $n -= $tn; $strcut = substr($string, 0, $n); } else { $dotlen = strlen($dot); $maxi = $length - $dotlen - 1; for($i = 0; $i < $maxi; $i++) { $strcut .= ord($string[$i]) > 127 ? $string[$i].$string[++$i] : $string[$i]; } } $strcut = str_replace(array('&', '"', "'", '<', '>'), array('&', '"', ''', '<', '>'), $strcut); return $strcut.$dot; }   这个函数是phpcms 2008 中的截取字符串的函数,写的有点多,所以我希望要找个正则匹配的,简单好维护,呵呵###### $str ='中国'; $result = preg_match("/[\x{4e00}-\x{9fa5}]/u",$str); print_r($result);php里面是这样的###### 这个我已经解决了,还是感谢下,哈~ 我后来查了下,相关版本 比如: [\u4e00-\u9fa5]    [\x{4e00}-\x{9fa5}]/u  ,关于正则匹配的问题涉及到编码问题,还是需要细细考虑下。 over。
montos 2020-06-02 12:46:19 0 浏览量 回答数 0

回答

[^\u4e00-\u9fa5] 这是一段匹配除了中文以外的字符串 http://regexpal.com/ 测试 http://unicodelookup.com (资料)###### function str_cut($string, $length, $dot = '...') { $strlen = strlen($string); if($strlen <= $length) return $string; $string = str_replace(array(' ', '&', '"', ''', '“', '”', '—', '<', '>', '·', '…'), array(' ', '&', '"', "'", '“', '”', '—', '<', '>', '·', '…'), $string); $strcut = ''; if(strtolower(CHARSET) == 'utf-8') { $n = $tn = $noc = 0; while($n < $strlen) { $t = ord($string[$n]); if($t == 9 || $t == 10 || (32 <= $t && $t <= 126)) { $tn = 1; $n++; $noc++; } elseif(194 <= $t && $t <= 223) { $tn = 2; $n += 2; $noc += 2; } elseif(224 <= $t && $t < 239) { $tn = 3; $n += 3; $noc += 2; } elseif(240 <= $t && $t <= 247) { $tn = 4; $n += 4; $noc += 2; } elseif(248 <= $t && $t <= 251) { $tn = 5; $n += 5; $noc += 2; } elseif($t == 252 || $t == 253) { $tn = 6; $n += 6; $noc += 2; } else { $n++; } if($noc >= $length) break; } if($noc > $length) $n -= $tn; $strcut = substr($string, 0, $n); } else { $dotlen = strlen($dot); $maxi = $length - $dotlen - 1; for($i = 0; $i < $maxi; $i++) { $strcut .= ord($string[$i]) > 127 ? $string[$i].$string[++$i] : $string[$i]; } } $strcut = str_replace(array('&', '"', "'", '<', '>'), array('&', '"', ''', '<', '>'), $strcut); return $strcut.$dot; }   这个函数是phpcms 2008 中的截取字符串的函数,写的有点多,所以我希望要找个正则匹配的,简单好维护,呵呵###### $str ='中国'; $result = preg_match("/[\x{4e00}-\x{9fa5}]/u",$str); print_r($result);php里面是这样的######这个我已经解决了,还是感谢下,哈~ 我后来查了下,相关版本 比如: [\u4e00-\u9fa5]    [\x{4e00}-\x{9fa5}]/u  ,关于正则匹配的问题涉及到编码问题,还是需要细细考虑下。 over。
kun坤 2020-06-01 09:47:34 0 浏览量 回答数 0
阿里云企业服务平台 陈四清的老板信息查询 上海奇点人才服务相关的云产品 爱迪商标注册信息 安徽华轩堂药业的公司信息查询 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 天籁阁商标注册信息 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 北京芙蓉天下的公司信息查询