函数的工作原理仅当函数被调用后,函数中的语句才会被执行,目的是根据需求完成一些特定的任务。而函数执行完毕后,控制权将返回到调用函数的地方。也就是当代码运行到函数调用的时候,程序的执行就会进入被调用的函数中,执行被调用函数中的代码语句,函数就能够以返回值的方式将信息返回给程序。通过在程序中使用函数,可以进行结构化编程。在结构化编程中,各个任务是由独立的程序代码段完成的。而函数正是实现“独立程序代码段
前言什么是树在学习二叉树之前.我们先来了解什么是树,跟我们现实生活中的树有什么联系,又有什么区别,树是一种很简单的结构,他是非线性的结构.在这种结构中,所有的元素之间的关系具有明显的层次特性,节点(Node)是树的基本构成部分,每个节点只有一个前件,成为父节点,没前件的父节点只有一个,那就是树的根节点(Root).每个节点可以有多个后件,这就是树的子节点(Children).没有后件(没有子节点)
前言何为JWT呢?JWT的全称是JSON Web Token,他是一种基于JSON的用于在网络上声明某种主张的令牌(token)。JWT通常由三部分组成: 头信息(header), 载荷(payload):也就是消息体和签名(signature);他是一种用于身份提供者和服务提供者双方之间传递安全信息简洁的、URL安全的表述性声明规范。是一个为分布式应用环境间传递身份信息而执行的一种基于JSON的
前言选择排序是一个非常经典且简单直观的排序算法,无论什么数据进去都是 O(n^2) 的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间。其排序时,元素交换次数最差的情况为n−1次。选择排序的原理是先固定每个元素的位置,在序列中找到最小的元素,将这个元素与第一个元素交换位置,其次是除去第一个元素,找到剩余序列中最小的元素,与第二个元素交换位置,以此类推,直到所有
前言其实最小公倍数的概念和计算最小公倍数的方法.那是我们在学习小学数学的时候就已经掌握的数学知识,为了更加通俗易懂一点,本文先从一个'分元宝'的故事入手:亡故的先父留下遗嘱,共有遗产17个元宝,老大得元宝的二分之一、 17/2=8.5老二得元宝的三分之一、 17/3=5.66666老三得元宝的九分之一、 17/9=1.8问他们每一个人分别应该分几个元宝?在《一代大商孟洛川》中是这样做的孟洛川拿来一
前言我们知道,程序是用来解决问题的,是由多个步骤或过程组成的,这些步骤和过程就是解决问题的算法。之前在《利用 Python 浅尝算法分析》这篇文章中写过算法分析,接着写了关于经典的冒泡排序算法《利用 Python 手把手带上实现冒泡排序》,算法虽然枯燥,但是当你深入了解就会感受到其中的趣味。在算法的学习中不但可以学会如何思考问题,提高自己的逻辑能力,还能在这些算法中积累解决实际生活
前言何为预测?预就是预先、事先,测就是度量、推测。预测通常被理解为对某些事物进行事先推测的过程。其实预测这个概念并不是我们第一次接触到,而是它从古至今都和我们的生活息息相关.而且在计算机技术飞速发展的DT时代,它一直伴随着我们,充斥着生活的方方面面,我们每个人都想更准确地预见未来,来掌握甚至改变事态的发展轨迹.所以用一句简单的话来概括就是:预测是一门研究未来的学问。从古至今都有人不断在研究它,应用
前言我们都知道程序中可通过定义函数来减少工作量,提高代码的可重用性,从而提高我们的开发效率.我们一直import的是别人的模块,那如果我们需要使用自己的模块,或者开发一个自己的模块供别人使用,我们自己造轮子该怎么做呢?我们实际的开发中,只在一个文件中编写代码是不太可能的,当开发大型项目的时候,一个文件过于臃肿,第一个是不利于阅读,代码可读性极差,还不利于团队协作开,所以这时候我们需要引入模块的概念
前言听说早在两千多年前的战国时期公孙龙就把面向对象玩得炉火纯青,而学过面对对象的你却还是一知半解梦回战国在春秋战国时期,各种思想学术流派的成就,与同期古希腊文明交相辉映;以孔子、老子、墨子为代表的三大哲学体系,形成诸子百家争鸣的繁荣局面;霎时,华夏大地百花齐放。诸子百家中流传甚广的是法家、道家、墨家、儒家、阴阳家、名家、杂家、农家、小说家、纵横家、兵家、医家。而我们今天所聊到的这位"大佬"也在其列
我们在编写程序的时候或多或少都出现过异常,也许是不小心,也可能是逻辑错误亦或是程序以外的问题,比如环境的问题,不管是什么原因,异常是我们不希望看到的.接下来,我们就什么是异常,遇到异常如何解决展开唠唠1.什么是异常异常会让我们的程序跳出正常的运行,异常给我们带来的损失,不容小觑.我们经常听到的是机器的异常.比如工厂流水线上的机器设备,某个零件出问题了,机器不能正常运行或者生产流程错乱;快递分拣设备
前言画图表就是为了把复杂的事情表达清楚,画图表还可以弥补单用文字表达的缺欠,对有些事物解说更直接、更具体。就像我们平时会议所用的 PPT,能够更直观呈现讲述者所想表达的意思,且通俗易懂。总的来说,使用图表可以化复杂为简洁,化抽象为具体,使读者或听众更容易理解。图表能跟直观表达和揭示数据的规律,人对图像更加敏感,对图文并茂的事物更容易接受,阅读更加简单高效,而且图表更显专业性,更具有说服力,更有利于
前言在很多追求极致的开发者中,大多都会拿 Python 跟其他编程语言比较,比如和java或者 C/C++比较一番,大家通常都会不约而同地从执行的角度对一门语言进行比较.而且这也是最直观的感受,所以 Python 会被普遍认为执行速度不够快.但是我一直觉得,存在即合理,每门编程语言都有它存在的意义,每门语言都有自己擅长的地方,一门编程语言的诞生大多都是作者当时为了解决自己遇到的某一领域难题而创造的
前言不管是线下办公,还是居家办公,摸鱼必不可少(当然不提倡摸鱼),可是摸鱼归摸鱼,工作总得完成,KPI得好看,才能走向人生巅峰。不然月月3.25,年年得吃土,你有多痛苦,老板不清楚,让你加入毕业队伍,你只会大骂人心不古。押韵吧,KPI要好看,活得干的好,干的有效率,平时还想摸摸鱼,那摸鱼神器不得备一套,额。。。不,是高效办公神器必须得攒一套。这不,自动化办公的神器双手奉上,废话不多说,上才艺。说到
最近要导入大量数据到数据库,数据库中有数据列要求唯一的,也就是唯一键,但是我拿到的数据有部分重复,一运行就会出错,如果把重复数据找出来,删除后在导入,太麻烦了,所以想要丝滑导入,并忽略重复数据,有了下面的解决方案:本次案例使用phpmyadmin进行演示1.准备比如我有如下的数据表(order):orderNo为唯一列目前表中已存在如下数据:建表代码如下:当然你也可以使用PHPmyadmin或者N
面向 CV 编程:COPY 了别人文章中的代码,想让代码能像作者一样跑通,应该注意什么呢?怎样才能让代码愉快地跑起来呢
前言前两篇文章中我们介绍了日常开发中常用到的字符串格式化函数,本文接着带大家继续了解PHP其他字符串格式化函数及加密函数,字符串的格式化处理函数还有很多,只要是想得到所需要格式化的字符串,都可以调用PHP中的提供的系统内置函数处理即可,很少需要自己定义字符的格式化处理函数。1.strrev()函数我们之前说过,PHP中处理字符的函数很多都会以str开头,辨识度很高,这是其中一个,所以在编程中命名很
前言HTML的输入表单和URL上附加资源是用户将数据提交给服务器的途径,如果不能很好地处理,就有可能成为黑客攻击服务器的入口。比如:用户在发布文章时,在文章中如果包含一些html格式的标记或javascript的页面转向等代码,直接输出显示则一定会是页面的布局发生改变,甚至调往非法网站,导致文章浏览者进入非法网站,更严重的甚至可能导致财产损失。因为这些代码被发送到浏览器中,浏览器会按有效的代码去解
前言前面的几篇文章我们介绍了字符串的基本概念和用法,同时还介绍了字符串的输出和格式化输出以及PHP中字符串的比较等操作函数,本文接着介绍字符串的其它常用的格式化相关的函数,字符串格式化就是将字符串处理为某种特定格式.通常用户从表单中提交给服务器的数据都是字符串的形式,可以说对字符串的处理是实际日常开发中打交道最多的.为了达到期望的输出效果,就需要按照一定的格式来处理这些字符串后再去使用.我们前面介
前言字符串的比较或者说字符串的判断是任何一门编程语言的字符串处理功能中的非常重要的特性之一。同时也是在实际开发中最常使用的字符串判断方式,在PHP中,除了可以使用比较运算符号(“==”或者<以及>)来进行比较操作,还提供了一个系列的比较函数,使得PHP可以进行更加复杂的字符串比较,也使得PHP中的字符串比较更加强大和简便。如:strcmp(),strcasecmp()以及strnatc
前言上一篇文章我们介绍到PHP的字符串有很多相关的处理函数,今天就先来详细介绍PHP字符串相关的输出函数以及格式化输出函数。在web的开发中,网页上大部分内容显示的都是文字或者图片,且文字居多。所以在实际开发中,对字符的处理和展示是最多。如果按用户的需求通过PHP动态输出这些文字,就需要将网页上的文字定义为字符串,然后再通过PHP的一些字符串输出函数将其输出。比如我们最常用于打印字符串的echo(
前言字符串几乎在所有编程语言都存在的一种数据类型,也是PHP中最重要的一种数据类型之一,更是日常开发中使用最多的一种数据类型。在web开发中,很多情况下需要对字符串进行处理和分析,这通常涉及字符串的格式化、连接与分割,比较、查找,翻转等等一系列操作。用户和系统的交互也基本上是通过文字来进行的,所以系统对文本信息,即字符的处理非常重视。在PHP的项目开发中有30%以上的代码在操作或处理字符串,字符串
前言前面两篇文章我们详细介绍了PHP命名空间的定义和基本使用以及命名空间相关术语解读,对PHP的命名空间的有了更多的了解,本文我们再深入探索PHP命名空间的更多使用技巧。废话不多说,直接上菜。命名空间的别名和导入涉及到命名空间的使用,命名空间中的别名和导入这俩个概念我们是无法逃避的,学会灵活使用,能让我们更好地玩转PHP。别名和导入可以看作是调用命名空间元素的一种快捷方式,允许通过别名引用或者导入
前言PHP的命名空间和文件系统的结构很像,文件夹可以有子文件夹,命名空间中也可以定义子空间来描述各个空间之间的所属关系。比如:cart购物车和order订单这两个模块都处于同一个shop商城项目内,通过命名空间子空间表达关系的:<?php namespace shop\cart; class Demo{ //类的成员 } namespace shop\order; class Demo{
前言学习过各种编程语言的童鞋,一定对命名空间这个概念并不陌生。PHP中的命名空间也不是一开始就有,而是在PHP5.3之后才增加命名空间这个特性,那为什么需要引入命名空间这个概念呢 ,或者说引入命名空间能解决什么问题?下面我们详细介绍,然后通过简单的实例感受命名空间的神奇之处。PHP中声明的函数名,类名以及常量名称,在同一次运行中是不能重复的,也就是不能出现重名,因为名称作为标识符在一次运行的空间中
前言众所周知,PHP的面向对象和Java一样,类只支持单继承,即是一个类只能继承自一个父类,不能存在多个父类,这也很好理解,就像现实的人类社会一样,儿子继承自你的父亲,父亲继承自祖父。。。,但是在实际开发中很多时候我们想像c++一样使用多重继承。奈何PHP只能使用单继承,在Trait出现之前,在PHP中要想实现多继承,只能使用接口,只有接口是可以实现多继承的,一个类可实现多个接口,而且接口和接口之
前言上一篇文章《【web 开发】PHP多态性详解及其应用》中我们详细了解了PHP中多态的相关概念和特点,在文章中我们介绍了多态存在的三个必要条件:继承、重写、父类引用指向子类对象。而且我们上一文章中也使用了详细的例子来说明多态的具体声明方式和使用方法。但是在具体实例代码中我们并没有体现出现父类引用指向子类对象的这个使用方式。我们仅仅是利用接口的实现来实现重写这个特点,所以本文接着详细介绍有关于体现
前言多态是面向对象的三大特性中除封装和继承之外的另一个重要的特性,它展现了动态绑定的功能,也称为: 同名异式.多态的功能可让软件在开发和维护时,达到充分的延伸性.事实上,多态最直接的定义就是让具有继承关系的不同对象.可以对相同名称的成员函数进行调用.产生不同的反应效果,所谓多态性是指一段程序能够处理多种类型对象的能力,例如:公司中一个发放工资的方法,公司内不同职位的员工工资,都是通过这个方法发放的
前言最近的失业潮引起很多打工人的恐慌,特别是ChatGPT之类的生成式AI的推出,其智能程度和自主学习能力远程人们想象.加剧了大家的恐慌情绪,在裁员潮这个当口,纷纷引发各行各业的猜测--人工智能替代大部分岗位,而且有些行业甚至已经使用上了ChatGPT类的生成式AI进行替代人类的部分工作,比如前阵子传的沸沸扬扬的AI制图替代人工设计,而且相比人类设计师它还有出图快的优势.但是在于个性化的定制方面,
前言因为php和Java一样,只支持单继承,即是每个类只能继承自一个父类。这就跟现实生活非常贴切,从生理学上来说,一个人只有一个父亲。当声明的心类继承抽象类实现模板以后,他就不能再有其他父类了。为了解决这个问题,php引入了接口的概念。接口是一种特殊的抽象类,这个在上一篇文章也介绍过。而抽象类又是一种特殊的类,所以接口也是一种特殊的类。这样关联起来,更有利于对抽象类和接口的理解。如果抽象类中的所有
前言生活中大家都喜欢定标准搞模板来规范化一系列流程,抽象类和接口却玩不明白,抽象类和接口相似,都是一种比较特殊的类,抽象类是一种特殊的类,而接口也是一种特殊的抽象类。他们通常配合面向对象的多态性一起使用。虽然声明和使用都比较容易,但他们的作用在理解上会稍微困难一点,接下来本文就带你了解抽象类的相关内容及使用.什么是抽象类在OOP语言中,一个类可以有一个或多个子类,而每个类都至少有一个公有方法作为外
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号