我将如何使用PHP函数preg_match()来测试字符串以查看是否存在空格?示例"thissentencewouldbetestedtrueforspaces""thisOneWouldTestFalse" 最佳答案 如果您对任何空白区域(包括制表符等)感兴趣,请使用\sif(preg_match("/\\s/",$myString)){//therearespaces}如果您只对空格感兴趣,那么您甚至不需要正则表达式:if(strpos($myString,"")!==false)
我需要将数据保存在表中(用于报告、统计等...),以便用户可以按时间、用户代理等进行搜索。我有一个每天运行的脚本,用于读取Apache日志,然后将其插入在数据库中。日志格式:10.1.1.150--[29/September/2011:14:21:49-0400]"GET/info/HTTP/1.1"2009955"http://www.domain.com/download/""Mozilla/5.0(Macintosh;U;IntelMacOSX10_6_8;de-at)AppleWebKit/533.21.1(KHTML,likeGecko)Version/5.0.5Safari
我的配置文件有一个以...开头的server指令blockserver{server_namewww.example1.comwww.example2.comwww.example3.com;...为了让网站可以用不同的域名访问。但是PHP的$_SERVER['SERVER_NAME']总是返回server_name的第一个条目,在本例中为http://www.example1.com所以我无法从PHP代码知道用户使用哪个域访问该站点。有什么办法可以让nginx/fastcgi传递访问站点的真实域名吗?到目前为止,我找到的唯一解决方案是为每个域重复整个serverblock,并使用不同
在我的php上,我使用preg_match来验证输入文本。if(preg_match('/^[a-zA-Z0-9]+$/',$firstname)){}但这只允许字母数字,不允许空格。我想允许空格、字母和数字。和句点(.)和破折号(-)请帮帮我好吗?提前致谢。 最佳答案 使用preg_match('/^[a-z0-9.\-]+$/i',$firstname) 关于php只允许使用preg_match的字母、数字、空格和特定符号,我们在StackOverflow上找到一个类似的问题:
我正在尝试导入CSV文件。由于我们使用的程序,第一行基本上是我想跳过的所有标题,因为我已经通过HTML放入了自己的标题。如何让代码跳过CSV的第一行?(strpos命令就是把所有行的第一个字段截掉。)".$data[$c]."";}Else{echo"".$data[$c]."";}}}fclose($handle);}?> 最佳答案 与其使用if条件来检查它是否是第一行,更好的解决方案是在while循环开始的行之前添加额外的代码行,如下所示:.........fgetcsv($handle);//Addingthislinewil
我正在尝试使用preg_match搜索UTF8编码的字符串.preg_match('/H/u',"\xC2\xA1Hola!",$a_matches,PREG_OFFSET_CAPTURE);echo$a_matches[0][1];这应该打印1,因为“H”在字符串“¡Hola!”中的索引1处。但它打印2。所以它似乎没有将主题视为UTF8编码的字符串,即使我传递了“u”modifier。在正则表达式中。我的php.ini中有以下设置,并且其他UTF8函数正在运行:mbstring.func_overload=7mbstring.language=Neutralmbstring.inte
对于单值检查,两者中哪一个是首选,为什么?$string=='Thequickbrownfoxjumpsoverthelazydog';if(strpos($string,'fox')!==false){//dotheroutine}#versusif(preg_match('/fox/i',$string)){//dotheroutine} 最佳答案 我更喜欢strpos而不是preg_match,因为正则表达式的执行成本通常更高。根据preg_match的官方php文档:Donotusepreg_match()ifyouonly
这对我来说不是什么大问题(据我所知),这更像是我感兴趣的事情。但是,使用is_numeric而不是preg_match(反之亦然)来验证用户输入值的主要区别是什么?示例一:示例二:我假设两者的作用完全相同,但是否有任何特定差异可能会在以后以某种方式导致问题?有没有“最好的方法”或我没有看到的东西让它们与众不同。 最佳答案 is_numeric()测试值是否为数字。但它不一定必须是整数-它可以是十进制数或科学记数法中的数字。您给出的preg_match()示例仅检查值是否包含数字0到9;任意数量,任意顺序。请注意,您给出的正则表达式也
preg_match()是做什么的和preg_match_all()函数的作用以及如何使用它们? 最佳答案 preg_match停止查看第一个匹配项。另一方面,preg_match_all会继续查找,直到处理完整个字符串。找到匹配后,它会使用字符串的其余部分来尝试应用另一个匹配。http://php.net/manual/en/function.preg-match-all.php 关于PHPpreg_match()和preg_match_all()函数,我们在StackOverflow
我正在开发一个私有(private)消息系统,允许用户按全名搜索用户,例如:“GeorgeWashington”。我有两个名为$firstname和$lastname的变量,搜索功能按相关性(您向该人发送消息的次数)对结果进行排序。如何获得一个文本字段以将“GeorgeWashington”拆分为$firstname="George"和$lastname="Washington"? 最佳答案 最简单的方法是使用爆炸:$parts=explode("",$name);在你得到这些部分之后,弹出最后一个作为$lastname:$last