• 关于

    strtolower函数

    的搜索结果

问题

php 单选、多选题评分算法 函数

亲测有效:单选,多选都可以用 /*1912news出品*/ function p_f($a,$b) {//$a 为答案  $b为正确答案 if(empty(trim($a)) or empty(trim($b))){return false...
hi35639411 2019-12-01 21:31:16 3515 浏览量 回答数 0

回答

您在这里混的API,mysql_*并且mysqli_*不混合。您应该坚持使用mysqli_(无论如何看起来还是这样),因为mysql_*不赞成使用函数,并且在PHP7中将其完全删除了。 您的实际问题是某个地方的字符集问题。这里有一些指针可以帮助您为应用程序获取正确的字符集。这涵盖了开发PHP / MySQL应用程序时可能会遇到的大多数一般问题。 您整个应用程序中的所有属性都必须设置为UTF-8 将文档另存为UTF-8(不带BOM)(如果您使用的是Notepad ++,则为Format-> Convert to UTF-8 w/o BOM) PHP和HTML中的标头都应设置为UTF-8 HTML(内部标签): PHP(在文件顶部,在任何输出之前): header('Content-Type: text/html; charset=utf-8'); 连接到数据库后,将连接对象的字符集设置为UTF-8,如下所示(直接在连接之后) mysqli_set_charset($conn, "utf8"); /* Procedural approach / $conn->set_charset("utf8"); / Object-oriented approach / 这是针对的mysqli_,还有与mysql_*和PDO 类似的(请参见此答案的底部)。 还要确保将数据库和表设置为UTF-8,您可以像这样进行操作: ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci; ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; (任何已存储的数据都不会转换为正确的字符集,因此您需要使用干净的数据库来执行此操作,如果字符损坏则需要在执行此操作后更新数据)。 如果使用json_encode(),则可能需要应用该JSON_UNESCAPED_UNICODE标志,否则它将特殊字符转换为等效的十六进制字符。 请记住,一切的代码需要被设置为UFT-8的整条管线,否则你可能在你的应用体验破字。 除了此列表之外,可能还有一些具有用于指定字符集的特定参数的函数。手册将告诉您这一点(例如htmlspecialchars())。 还有一些针对多字节字符的特殊功能,例如:strtolower()不会降低多字节字符,因为您必须使用它mb_strtolower(),请参见此实时演示。 注1:请注意,其某处标记为utf-8(带破折号),某处标记为(无破折号utf8)。重要的是要知道什么时候使用,因为它们通常是不可互换的。例如,HTML和PHP需要utf-8,而MySQL则不需要。 注2:在MySQL中,“字符集”和“排序规则”不是同一回事,请参见编码和排序规则之间的区别?。两者都应设置为utf-8;通常排序规则应为utf8_general_ci或utf8_unicode_ci,请参见UTF-8:常规?斌吗 Unicode?。 注意3:如果您使用表情符号,则需要在数据库和连接中使用utf8mb4字符集而不是standard 来指定MySQL utf8。HTML和PHP将只有UTF-8。 使用mysql_和PDO 设置UTF-8 PDO:这是在对象的DSN中完成的。注意该charset属性, $pdo = new PDO("mysql:host=localhost;dbname=database;charset=utf8", "user", "pass"); mysql_:这样做非常类似于mysqli_*,但是它没有将连接对象作为第一个参数。 mysql_set_charset('utf8');来源:stack overflow
保持可爱mmm 2020-05-10 18:27:33 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

回答

[^\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-15 11:09:08 0 浏览量 回答数 0

回答

"<pre class=""brush:js; toolbar: true; auto-links: false;"">[^\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-05-31 13:03:04 0 浏览量 回答数 0

问题

看看今天都有谁来看你

我们都知道php中有变量记录单独访问的客户端ip地址,但是如果我们给他加上时间戳和国家地区,就可以更清楚的了解和掌握,每天都有哪些人来访问你的网站了。这个帖子像你介绍一种基于geoip数据库的简单记...
coderandroid 2019-12-01 21:21:49 9173 浏览量 回答数 3

问题

网页中一段php报错,不知道原因求解答?报错

新手求助现在一家CMS网站实习,之前并未接触过php mysql故学习中                            <!-- 开盘日历 --> <script type="t...
爱吃鱼的程序员 2020-06-20 16:44:11 0 浏览量 回答数 1

云产品推荐

上海奇点人才服务相关的云产品 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 阿里云AIoT