PHP 测试杂项
// 驼峰转下划线
function humpToUnderline($str){
if(empty($str)){
return "";
}
$arr = str_split($str);
$temp = "";
foreach($arr as $key => $val){
$ascii = ord($val);
if( $ascii >= 65 && $ascii <= 90 ){
if($key == 0){
$temp .= chr($ascii+(97-65));
}else{
$temp .= "_".chr($ascii+(97-65));
}
}else if( $ascii >= 97 && $ascii <= 122 ){
$temp .= chr($ascii);
}else{
$temp .= "";
}
}
return $temp;
}
// 下划线转驼峰
function underlineToHump($str){
if(empty($str)){
return "";
}
$arr = explode("_", $str);
foreach($arr as $key => $val){
$arr[$key] = ucfirst( strtolower($val) );
}
return implode("",$arr);
// return implode("",array_map('ucfirst',array_map('strtolower',explode("_", $str))));
} // ASCII A - 65
// ASCII Z - 90
// ASCII a - 97
// ASCII z - 122
$str = "ABC";
echo humpToUnderline($str);
echo "<br>";
$str = "a_b_____c";
echo underlineToHump($str);
exit;
preg_match_all("/([A-Z]{1}).*[A-Z]*/", $str, $matches); // foreach($matches[1] as $key => $val){
// echo strpos($str,$val)."/";
// } var_dump($matches);
// $str = "AaBbCc";
// preg_match_all("/([A-Z]{1})(.)/", $str, $matches);
// $matches[0] 匹配全体字符串
// $matches[1] 匹配第一个括号里面字符串
// $matches[2] 匹配第二个括号里面字符串
if(count($matches[1]) > 0){
$res = array_map(function($v){
return "_".strtolower($v);
}, $matches[0]);
}
$res = ltrim( implode("", $res),"_" );
var_dump($res); // $str = preg_replace('/([A-Z]{1})/',"strtoupper('$1')",$str);
详解 $_SERVER 函数中QUERY_STRING和REQUEST_URI区别
实例:
1,http://localhost/aaa/ (打开aaa中的index.php)
结果:
$_SERVER['QUERY_STRING'] = "";
$_SERVER['REQUEST_URI'] = "/aaa/";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
2,http://localhost/aaa/?p=222 (附带查询)
结果:
$_SERVER['QUERY_STRING'] = "p=222";
$_SERVER['REQUEST_URI'] = "/aaa/?p=222";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
3,http://localhost/aaa/index.php?p=222&q=333
结果:
$_SERVER['QUERY_STRING'] = "p=222&q=333";
$_SERVER['REQUEST_URI'] = "/aaa/index.php?p=222&q=333";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
由实例可知:
$_SERVER["QUERY_STRING"] 获取查询 语句,实例中可知,获取的是?后面的值
$_SERVER["REQUEST_URI"] 获取 http://localhost 后面的值,包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:index.php
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名
PHP 测试杂项的更多相关文章
- 杂项之使用qq邮箱发送邮件
杂项之使用qq邮箱发送邮件 本节内容 特殊设置 测试代码 1. 特殊设置 之前QQ邮箱直接可以通过smtp协议发送邮件,不需要进行一些特殊的设置,但是最近使用QQ邮箱测试的时候发现以前使用的办法无法奏 ...
- 杂项之图像处理pillow
杂项之图像处理pillow 本节内容 参考文献 生成验证码源码 一些小例子 1. 参考文献 http://pillow-cn.readthedocs.io/zh_CN/latest/ pillow中文 ...
- Python渗透测试工具合集
摘自:http://www.freebuf.com/tools/94777.html 如果你热爱漏洞研究.逆向工程或者渗透测试,我强烈推荐你使用 Python 作为编程语言.它包含大量实用的库和工具, ...
- ARM指令集----杂项指令
ARM指令集可以分为6类,即是跳转指令,数据处理指令,程序状态传输指令,Load.Store指令,协处理器指令和异常中断指令 跳转指令: 在ARM中有两种方式可以实现程序的跳转,一种是跳转指令,另一种 ...
- BootStrap入门教程 (三) :可重用组件(按钮,导航,标签,徽章,排版,缩略图,提醒,进度条,杂项)
上讲回顾:Bootstrap的基础CSS(Base CSS)提供了优雅,一致的多种基础Html页面要素,包括排版,表格,表单,按钮等,能够满足前端工程师的基本要素需求. Bootstrap作为完整的前 ...
- 第二篇:杂项之图像处理pillow
杂项之图像处理pillow 杂项之图像处理pillow 本节内容 参考文献 生成验证码源码 一些小例子 1. 参考文献 http://pillow-cn.readthedocs.io/zh_CN/ ...
- iperf 测试工具
Iperf是一个网络性能测试工具.Iperf可以测试TCP和UDP带宽质量.Iperf可以测量最大TCP带宽,具有多种参数和UDP特性. Iperf可以报告带宽,延迟抖动和数据包丢失.利用Iperf这 ...
- Python测试 ——开发工具库
Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. mechanize- Python中有状态的程序化Web浏 ...
- python渗透测试工具集合
作者:一起学习Python 原文链接:https://zhuanlan.zhihu.com/p/21803985 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 在进行漏洞研究. ...
随机推荐
- U3D对齐功能
1,按快捷键Shift + v 的用法: [1]先选中你要对齐的模型A,[将物体A对齐到物体B]. [2]按快捷键Shift + v ,此时将鼠标移到模型A的各个顶点处,可发现各个顶点上会 ...
- js中的构造函数
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Django读取Mysql数据并显示在前端
一.首先按添加网页的步骤添加网页,我的网页名为table.html, app名为web table.html放到相应目录下, froms文件提前写好 修改views.py ? 1 2 3 4 5 6 ...
- UILabel(富文本)
本文转载至 http://www.jianshu.com/p/5d24d22f99c3 富文本 NSString *str = @"人生若只如初见,何事秋风悲画扇.\n等闲变却故人心,却道故 ...
- 用SpannableString打造绚丽多彩的文本显示效果
extends:http://www.jianshu.com/p/84067ad289d2 引语 TeXtView大家应该都不陌生,文本展示控件嘛! 就用TextView显示普普通通的文本,OK,很简 ...
- Oracle客户端的安装与远程连接配置
在继续Oracle客户端的安装之前,需要分析一下Oracle客户端与数据库服务器之间的连接机制. 一.Oracle客户端与服务器端的通讯机制 1.Oracle Net协议 如下图所示,Oracle通过 ...
- 我心目中的Dream-购物车
功能要求: 1.要求用户输入自己拥有的总资产,例如:30000 2.显示商品列表的序号,商品名称,商品价格,让用户根据序号选择商品,然后加入购物车 例如: 1 Macbook 12000 2 Logi ...
- hadoop历史版本,包括大名鼎鼎的hadoop 0.20.2
http://archive.apache.org/dist/hadoop/core/ 大名鼎鼎的hadoop 0.20.2在此: http://archive.apache.org/dist/had ...
- Oracle DBLINK 简单使用
oracle在进行跨库访问时,可以通过创建dblink实现,今天就简单的介绍下如果创建dblink,以及通过dblink完成插入.修改.删除等操作 首先了解下环境:在tnsnames.ora中配置两个 ...
- 查询执行成本高(查询访问表数据行数多)而导致实例 CPU 使用率高是 MySQL 非常常见的问题
MySQL CPU 使用率高的原因和解决方法_产品性能_常见问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/knowledge_detail/51587.html ...