xdebug

JS 文件夹上传下载解决方案

六月ゝ 毕业季﹏ 提交于 2020-04-27 02:36:52
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用。 这次项目的需求: 支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,ie8,ie9,Chrome,Firefox,360安全浏览器,并且刷新浏览器后仍然能够续传,重启浏览器(关闭浏览器后再打开)仍然能够继续上传,重启电脑后仍然能够上传 支持文件夹的上传,要求服务端能够保留层级结构,并且能够续传。需要支持10万个以上的文件夹上传。 支持低版本的系统和浏览器,因为这个项目的最终运行环境在政府,政府的配置都一般,职员都是办公用,内存都不大,基本上以Windows XP的系统为主。 1、介绍enctype enctype 属性规定发送到服务器之前应该如何对表单数据进行编码。 enctype作用是告知服务器请求正文的MIME类型(请求消息头content-type的作用一样) 1、1 enctype的取值有三种 值 描述 application/x-www-form-urlencoded 在发送前编码所有字符(默认) multipart/form-data 不对字符编码。每一个表单项分割为一个部件 text/plain 空格转换为 “+” 加号,但不对特殊字符编码。 1. 当enctype=’application/x-www-form-urlencoded’ 2

53个要点提高PHP编程效率

南楼画角 提交于 2020-04-23 07:27:34
用单引号代替双引号来包含字符串,这样做会更快一些 。因为php会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译 注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。   1、 如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。   2、$row[’id’] 的速度是$row[id]的7倍。   3、 echo 比 print 快 ,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。   4、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。   5、注销那些不用的变量尤其是大数组,以便释放内存。   6、尽量避免使用__get,__set,__autoload。   7、require_once()代价昂贵。   8、include文件时尽量使用绝对路径,因为它避免了PHP去include_path里查找文件的速度,解析操作系统路径所需的时间会更少。   9、如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻, 使用$_SERVER[‘REQUEST_TIME’]要好于time()。   10、函数代替正则表达式完成相同功能。   11

SpringBoot大文件上传解决方案

微笑、不失礼 提交于 2020-04-17 01:04:04
【推荐阅读】微服务还能火多久?>>> 这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数 下面直接贴代码吧,一些难懂的我大部分都加上注释了: 上传文件实体类: 看得出来,实体类中已经有很多我们需要的功能了,还有实用的属性。如MD5秒传的信息。 public class FileInf { public FileInf(){} public String id=""; public String pid=""; public String pidRoot=""; /** * 表示当前项是否是一个文件夹项。 */ public boolean fdTask=false; // /// 是否是文件夹中的子文件 /// </summary> public boolean fdChild=false; /** * 用户ID。与第三方系统整合使用。 */ public int uid=0; /** * 文件在本地电脑中的名称 */ public String nameLoc=""; /** * 文件在服务器中的名称。 */ public String nameSvr=""; /** * 文件在本地电脑中的完整路径。示例:D:\Soft\QQ2012.exe */ public String pathLoc=""; /**

IntelliJ IDEA远程调试Tomcat和jar的方法

僤鯓⒐⒋嵵緔 提交于 2020-04-14 14:56:24
【推荐阅读】微服务还能火多久?>>> 记录一下今天学到的如何使用IDEA进行远程连接tomcat进行调试的方法。 tomact启动 首先,在阿里云服务器上的Tomcat的bin目录下的catalina.sh中写入 CATALINA_OTPS=“-Xdebug -Xrunjdwp:transport=dt_socket,address=xxxx,server=y,suspend=n” 这行指令 其中xxxx代表自己所要设置的端口号,我自己是设置8888, 然后重新启动tomcat,输入ps -ef | grep tomcat,能看到配置的信息已经生效了。 然后要记得去阿里云控制台设置对应的安全组策略。 接着,启动IDEA,选择Edit Configurations 点击+号,然后选择remote 将Socket以及Attach选择上,Host处填上自己云服务器的IP地址,port就是你刚刚在服务器设置的端口 search source using module‘s classpath,这里要选择自己所要远程连接调试的项目 然后点击ok 然后直接开启IDEA的Debug模式 出现下图字样即代表成功连接 然后在你项目controller 打上断点,访问阿里云的项目你就能接收到了。 如果是jar包,只需要修改jar包启动的参数就行 例如: java -Xdebug -Xrunjdwp

Remove character limit in VS Code PHPDebug

◇◆丶佛笑我妖孽 提交于 2020-04-10 09:20:06
问题 When debugging in PHP and using the variables pane on the left, there is a limit to the amount of characters you can see for that variable/object when hovering over. Is there anyway to see the full payload for that variable or any work around other than having to use file_put_contents every time I want to see a large variable value? Also printing the variable to the debug console has the same limitation but adds one extra character (lucky me). 回答1: In order to achieve that you need to make a

我是如何用IDEA调试BUG的?

五迷三道 提交于 2020-04-06 18:51:32
最近小明的bug有点多,忙的连王者荣耀都顾不上玩了,导致现在不得不抽点时间研究一下作为当前大多Java程序员开发工具的IDEA DEBUG功能,以提高效率。 一、条件断点 场景:我们在遍历某个集合,期望程序在满足某些预设条件时停住,比如:沐芳老师在课堂上点名,需要在点到小明的时候暂停确认一下是否有人在帮小明答“到”! 那沐芳老师可以这样: 右击断点旁边的小红点(断点),弹出面板,在 Condition 这里填入暂停条件,这样调试时,当程序满足条件时就会稳稳地停在 student= "小明" 的位置。 二、回到"过去" 场景:人非圣贤,孰能无过。在日常开发中,大家都有手残的时候,比如在调试一个业务逻辑比较复杂,有多个方法嵌套时,一不小心手抖,断点过去了,这该怎么办? 这天,沐芳老师如往常一样在上课前点名,当点到小明的时候,不争气的小明在偷偷看喜欢的妹子,没有注意听,当反应过来时,已经错过了答到!十分懊悔(红颜祸水啊),这时小明就可以借用大雄的机器猫进行时光穿梭: 观察上图,我们看到,按照点名顺序,现在沐芳老师点名已经轮到小红,小明已经错过答到,机器猫可以这样帮助小明:点击上图红色框框圈中的 Drop Frame 图标(如果存在多个方法的嵌套调用,可以多点几下),就这样,小明穿越了,没有错过这次的答到: tips :这个按钮之所以叫做 Drop Frame ,是因为 JVM 内部是以

PHP 代码审计基础

拈花ヽ惹草 提交于 2020-03-25 12:21:47
3 月,跳不动了?>>> 第一部分 审计流程 1.用户请求的处理流程 获取请求 全局过滤 模块文件 C函数内容 M函数内容 V显示 2.通读原文 函数集文件 配置文件 安全过滤文件 Index文件 3.网站目录结构 主目录 模块目录 插件目录 上传目录 模块目录 数据目录 配置目录 配置文件 公共函数文件 安全过滤文件 数据库结构 入口文件 4.敏感关键字回溯参数 优点 : 高效的挖掘漏洞 判断敏感触发点的位置以及上下文,追溯参数源头 缺点: 覆盖不到逻辑漏洞的挖掘 不能了解程序的基本框架 功能点定向审计 程序安装 文件上传 文件管理 登录验证 备份恢复 找回密码 例子 Dami cms 账户功能 登录 会员资料 找回密码 注册 修改密码 我的投稿 我的订单 第二部分 PHP核心配置 1.大小写敏感 directive = value(指令=值) foo = bar ≠ FOO = bar 2.运算符 | 、&、~、! 空值的表达方式 foo = ; foo = none; foo = “none”; 3.安全模式 safe_mode=off (PHP 5.4移除 )限制文档存取、环境变量的读取以及空值外部程序的运行 限制环节变量的读取 safe_mode_allowed_env_vas = string 指定PGP程序可以改变的环境变量的前缀,当值为空的时候

[PHP] 使用xdebug查看php的性能损耗

試著忘記壹切 提交于 2020-03-24 20:40:29
xdebug除了调试程序外 , 还可以来检测程序的性能损耗点 , 展示成图表的形式 在php.ini中增加如下配置: xdebug.profiler_output_dir=/tmp xdebug.profiler_enable=1 访问程序后 , 会在tmp目录生成cachegrind.out.xxxx的文件 , 把这个文件下载到我们windows系统上 下载个qcachegrind软件直接打开上面的cache文件,可以看到性能损耗和调用关系 https://sourceforge.net/projects/qcachegrindwin/ 来源: https://www.cnblogs.com/taoshihan/p/12560980.html

Debugging Laravel with VSCode on Docker container using Xdebug as debugger

社会主义新天地 提交于 2020-03-23 08:09:32
问题 I am trying to debug Laravel code on Visual Studio Code using Xdebug. I am using Docker container that works as server. But I am getting this error when try to debug: Cannot connect to runtime process, timeout after 10000 ms - (reason: Cannot connect to the target: connect ECONNREFUSED 192.168.99.100:9000). Here is my VSCode launch.json "version": "0.2.0", "configurations": [ { "type": "node", "request": "attach", "name": "Docker: Attach to Node", "port": 9000, "address": "192.168.99.100",

PHPStorm+Xdebug配置

一笑奈何 提交于 2020-03-18 14:27:21
某厂面试归来,发现自己落伍了!>>> PHPStorm+Xdebug配置,用于快速调试未知问题 安装   打开 http://www.xdebug.org/download.php 下载相应的版本   注:下载跟机器上安装的php匹配的版本,可以通过命令行(确保php加入path)指令 php -i 输出phpinfo信息,并拷贝到 http://www.xdebug.org/find-binary.php , 然后按照指导安装。如下图所示 点击下载dll文件,然后复制到php的拓展目录下,如我的是: D:\phpStudy\php\php-7.1.29-nts\ext 2. 配置XDebug,打开php.ini,在末尾增加如下代码: ;指定Xdebug扩展文件的绝对路径 zend_extension="D:\phpStudy\php\php-7.1.29-nts\ext\php_xdebug.dll" ;启用性能检测分析 xdebug.profiler_enable=1 ;启用代码自动跟踪 xdebug.auto_trace=1 ;允许收集传递给函数的参数变量 xdebug.collect_params=1 ;允许收集函数调用的返回值 xdebug.collect_return=1 ;指定堆栈跟踪文件的存放目录 xdebug.trace_output_dir="D: