-
基于PHP实现堆排序原理介绍
所属栏目:[编程] 日期:2022-07-20 热度:117
堆(heap)是计算机科学中一类特殊的数据结构的统称,通常是一个可以被看做一棵树的数组对象。 堆{k1,k2,ki,,kn} (ki = k2i,ki = k2i+1)|(ki = k2i,ki = k2i+1), (i = 1,2,3,4...n/2) 堆排序 堆排序求升序用大顶堆,求降序用小顶堆。 本例用求降序的小顶堆来解[详细]
-
Spring MVC实行流程
所属栏目:[编程] 日期:2022-07-19 热度:64
在学习框架之前,首先来了解一下 Spring MVC 框架的整体请求流程和使用到的 API 类。 Spring MVC 涉及到的组件有 DispatcherServlet(前端控制器)、HandlerMapping(处理器映射器)、HandlerAdapter(处理器适配器)、Handler(处理器)、ViewResolver(视[详细]
-
Spring MVC @Controller和@RequestMapping解析
所属栏目:[编程] 日期:2022-07-19 热度:144
Spring 2.5 版本新增了 Spring MVC 注解功能,用于替换传统的基于 XML 的 Spring MVC 配置。 在《第一个Spring MVC应用》一节中创建了两个传统风格的控制器,它们是实现 Controller 接口的类。传统风格的控制器不仅需要在配置文件中部署映射,而且只能编写一[详细]
-
Spring MVC传递数据
所属栏目:[编程] 日期:2022-07-19 热度:199
Spring MVC Controller 接收请求参数的方式有很多种,有的适合 get 请求方式,有的适合 post 请求方式,有的两者都适合。主要有以下几种方式: 通过实体 Bean 接收请求参数 通过处理方法的形参接收请求参数 通过 HttpServletRequest 接收请求参数 通过 @Path[详细]
-
Spring MVC重定向及转发
所属栏目:[编程] 日期:2022-07-19 热度:120
Spring MVC 请求方式分为转发、重定向 2 种,分别使用 forward 和 redirect 关键字在 controller 层进行处理。 重定向是将用户从当前处理请求定向到另一个视图(例如 JSP)或处理请求,以前的请求(request)中存放的信息全部失效,并进入一个新的 request[详细]
-
Spring MVC @Autowired和@Service解释
所属栏目:[编程] 日期:2022-07-19 热度:191
将依赖注入到 Spring MVC 控制器时需要用到 @Autowired 和 @Service 注解。 @Autowired 注解属于 org.springframework.beans.factory. annotation 包,可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 @Service 注解属于 org.springframewo[详细]
-
Spring MVC @ModelAttribute说明
所属栏目:[编程] 日期:2022-07-19 热度:152
本文介绍在 Spring MVC 中非常重要的注解 @ModelAttribute,用来将请求参数绑定到 Model 对象。 以上示例,在请求 /model?name=%E7%BC%96%E7%A8%8B%E5%B8%AE 后,Spring MVC 会先执行 myModel 方法,将 name 的值存入到 Model 中。然后执行 model 方法,这样[详细]
-
Spring MVC类别转换器 Converter
所属栏目:[编程] 日期:2022-07-19 热度:65
Spring MVC 框架的 ConverterS,T 是一个可以将一种数据类型转换成另一种数据类型的接口,这里 S 表示源类型,T 表示目标类型。开发者在实际应用中使用框架内置的类型转换器基本上就够了,但有时需要编写具有特定功能的类型转换器。 例如,用户输入的日期可[详细]
-
Spring MVC JSON数据交换
所属栏目:[编程] 日期:2022-07-19 热度:72
Spring MVC 在数据绑定的过程中需要对传递数据的格式和类型进行转换,它既可以转换 String 等类型的数据,也可以转换 JSON 等其他类型的数据。本节将针对 Spring MVC 中 JSON 类型的数据交互进行讲解。 JSON 概述 JSON(JavaScript Object Notation, JS 对象[详细]
-
Spring MVC异常解决
所属栏目:[编程] 日期:2022-07-19 热度:108
在 Spring MVC 应用的开发中,不管是操作底层数据库,还是业务层或控制层,都会不可避免地遇到各种可预知的、不可预知的异常。我们需要捕捉处理异常,才能保证程序不被终止。 Spring MVC 有以下 3 种处理异常的方式: 使用 Spring MVC 提供的简单异常处理器[详细]
-
在PHP环境中使用ProtoBuf数据格式
所属栏目:[编程] 日期:2022-07-19 热度:73
RPC是google公司主导的一款RPC框架,并使用protobuf作为数据传输格式,伴随gRPC框架的成熟及使用人群的增加,对于底层使用的数据格式protobuf也被越来越受到重视,而对于PHP生态而言,相关ProtoBuf介绍文档及使用资料比较少,故此写简文希望能帮助到一些有需[详细]
-
异步 PHP 是啥?
所属栏目:[编程] 日期:2022-07-19 热度:103
同步编程与异步编程的区别 在讨论异步PHP的优点之前,让我们快速回顾一下同步编程模型和异步编程模型之间的区别。同步代码是逐行顺序执行的。必须先完 成前面的任务,然后才能开始另一个任务。在异步代码中,可以同时完成多个任务,这可以大大提高应用程序性[详细]
-
php中模拟qq登录代码
所属栏目:[编程] 日期:2022-07-19 热度:111
本文讲述了php如何模拟qq登录,原理是用curl模拟发送post登录,cookie保存本地,这里代码理论可以支持永久单挂qq,下面就让我们来看看吧。 ?php $qqno=你的QQ; $qqpw=QQ密码; $cookie = dirname(__FILE__)./cookie.txt; $post = array( $curl = curl_init(ht[详细]
-
use在php中的使用方法代码例子
所属栏目:[编程] 日期:2022-07-19 热度:67
最近一段时间在研究php框架,一直想的什么时候才能开发出自己的框架,当然这是为了提升自己的编程水平,同时能把平时学的零散的东西糅合在一块熟练应用。但是开发一个框架根本不知道如何做起,先开发什么,虽然php的框架也不少,但是都是如何应用,没有文档[详细]
-
有利于小白的php基础知识总结
所属栏目:[编程] 日期:2022-07-19 热度:114
有利于新手的php基础知识总结 刚开始学习PHP,以后大家多多指教: 学习后台是一个漫长的过程,刚学PHP,总结了一小部分,有人会问为什么把W3C的东西拷贝出来分享呢? 我的回答是:W3C都是一些入门基础,很有实在意义,而且很多人不愿去W3C去学习,东西太多。[详细]
-
php搭建一个区块链含源码
所属栏目:[编程] 日期:2022-07-19 热度:80
我们要用PHP编程语言构建区块链,区块链本身就是一个非常简单的概念,它是一个非常简单的数据结构,数字货币是很复杂,但区块链不是,它们复杂的原因是共识算法,挖矿机制和运行在他们之上的一切,但区块链本身是很容易理解的,在你真正了解区块链是如何工作[详细]
-
介绍PHP扫码登录原理及实现方法
所属栏目:[编程] 日期:2022-07-19 热度:104
由于扫码登录比账号密码登录更方便、快捷、灵活,在实际使用中更受到用户的欢迎。 本文主要介绍了扫码登录的原理及整体流程,包含了二维码的生成/获[详细]
-
教你用php将二维码和文字融合到一个背景图片上!
所属栏目:[编程] 日期:2022-07-19 热度:75
将二维码生成到背景图片上,并且文字生成到背景图上,可以无限制扩增 1.生成前的图片 教你用php将二维码和文字结合到一个背景图片上! 生成后的图片 教你用php将二维码和文字结合到一个背景图片上! class codeImg { * 生成二维码 * @param [type] $website[详细]
-
PHP方法解决微信昵称特殊符号过滤
所属栏目:[编程] 日期:2022-07-19 热度:123
我们在通过PHP获取微信昵称,并且存于数据库的时候,由于一些昵称带有特殊符号,所以存不进去,这时候我们可以通过下面的方式来处理。 方法一 preg_replace(/[x{1F600}-x{1F64F}x{1F300}-x{1F5FF}x{1F680}-x{1F6FF}x{2600}-x{26FF}x{2700}-x{27BF}[详细]
-
php单例模式 使用场景和使用方法总结
所属栏目:[编程] 日期:2022-07-19 热度:161
一个类只有一个对象实例 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 单例模式是一种常见的设计模式,在计算机系统中,线程池、缓存、日志对象、对话框、打印机、数据库操作、显卡的驱动程序常被设计成单例。 单例模式分3种[详细]
-
C++ STL distance 函数用法详解 一看就懂
所属栏目:[编程] 日期:2022-07-19 热度:100
我们知道,作用于同一容器的 2 个同类型迭代器可以有效指定一个区间范围。在此基础上,如果想获取该指定范围内包含元素的个数,就可以借助本节要讲的 distance() 函数。 distance() 函数用于计算两个迭代器表示的范围内包含元素的个数,其语法格式如下: tem[详细]
-
C++ find_if 和find_if_not 函数用法详解
所属栏目:[编程] 日期:2022-07-19 热度:168
继《C++ find()函数》一节后,本节再讲解 2 个和 find() 功能类似的函数,分别为 find_if() 函数和 find_if_not() 函数。 值得一提的是,find_if() 和 find_if_not() 函数都定义在algorithm头文件中。因此在使用它们之前,程序中要先引入此头文件: #include[详细]
-
C++ find_end 函数详解
所属栏目:[编程] 日期:2022-07-19 热度:95
find_end() 函数定义在algorithm头文件中,常用于在序列 A 中查找序列 B 最后一次出现的位置。例如,有如下 2 个序列: 序列 A:1,2,3,4,5,1,2,3,4,5 序列 B:1,2,3 通过观察不难发现,序列 B 在序列 A 中出现了 2 次,而借助 find_end() 函数,可以轻松的得[详细]
-
C++ find_first_of 函数完全攻略
所属栏目:[编程] 日期:2022-07-19 热度:107
在某些情境中,我们可能需要在 A 序列中查找和 B 序列中任意元素相匹配的第一个元素,这时就可以使用 find_first_of() 函数。 仅仅用一句话概述 find_first_of() 函数的功能,读者可能并不理解。别急,下面我们将从语法格式的角度继续阐述该函数的功能。 fin[详细]
-
C++ adjacent_find 函数用法详解
所属栏目:[编程] 日期:2022-07-19 热度:181
adjacent_find() 函数用于在指定范围内查找 2 个连续相等的元素。该函数的语法格式为: //查找 2 个连续相等的元素 ForwardIterator adjacent_find (ForwardIterator first, ForwardIterator last); //查找 2 个连续满足 pred 规则的元素 ForwardIterator ad[详细]
