经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
 PHP

PHP如何获取命令行参数

使用 PHP 开发的同学多少都会接触过 CLI 命令行。经常会有一些定时任务或者一些脚本直接使用命令行处理会更加的方便,有些时候我们会需要像网页的 GET 、 POST 一样为这些命令行脚本提供参数。比如在针对某些日期做统计的脚本,就需要传递一个日期给它,这样我们就统计指定日期的一些数据。这类需求...[2021/5/7]

PHP中垃圾回收相关函数的使用

之前我们已经学习过 PHP 中的引用计数以及垃圾回收机制的概念。这些内容非常偏理论,也是非常常见的面试内容。而今天介绍的则是具体的关于垃圾回收的一些功能函数。关于之前的两篇介绍文章,大家可以到文章底部查看。 再谈循环引用以及强制清理循环引用 我们为什么要强调 “循环引用” 呢?其实,在默...[2021/5/7]

PHP 配置Xdebug调试工具

下载Xdebug 官方下载地址:https: xdebug.org/download#releases,以 Windows 为例,如下图。 带有 TS 的为线程安全。 配置php.ini 将下载好的 dll 文件放在 PHP 安装目录下的 ext 目录下:  打开 php...[2021/5/6]

ThinkPHP 对接支付宝支付接口

1) 登录支付宝,选择【我是开发者】进入支付宝开放中台,没有入驻开发平台账户的,会自动跳转到入驻注册界面,或者点击【进入管理中心】也会跳转至入驻注册界面。     2) 进入【管理中心】,选择控制台【开发服务】,点击【研发服务】(沙箱即支付宝开放平台为开发人员提供好的测...[2021/5/6]

PHP CentOS下安装PHP及部署ThinkPHP

本文操作环境:CentOS 7 64位 下载PHP源码 百度搜索PHP,进入官网下载页面。  如我下载的是 php-7.2.33.tar.gz ,将之上传到CentOS的 /home/local/ 目录下。 yum安装依赖包 yum -y install libx...[2021/5/6]

[PHP] php5.3之前-php5.3-php7垃圾回收机制的进化

php5.3之前的版本 , 只有引用计数 , 如果遇到循环引用的情况  , 会出现内存泄露 比如这样的代码: <?php $arr=array("tao"); $arr[]=$a; unset($arr) 虽然unset了$arr , 但是内存并不能回收 , 因为有...[2021/5/6]

PHP RabbitMQ消息队列演示代码

先决条件 已安装PHP,Erlang和RabbitMQ。 安装PHP环境下使用的RabbitMQ第三方库——php-amqplib 使用composer安装php-amqplib库。 生产者代码 <?php require ''vendor/autoload.php''; use ...[2021/5/6]

如何用PHP编写简单的api数据接口

一、编写接口所需几样工具或软件(均是win7+64位) 1.phpStudy、SQLyog和编码工具(sublime text/webStorm/vs code均可,按自己习惯来); 2.安装好phpStudy之后,打开软件,点击启动;如果Apache和MySQL右边的显示都是绿色的,那么说...[2021/4/19]

Centos下搭建LAMP+PHP

Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管理系统或数据库服务器 PHP、Perl或Python,脚本语言 虽然这些开源程序本身...[2021/4/19]

php小结

函数定义常量 define define(“PI”,3.14); 使用const关键字   const PI= 3; 特殊常量 双下划线开始+常量名+双下划线结束,称为魔术常量,魔术常量的值通常会跟着环境变化,但是不能改变 __DIR__:当前被执行脚本所在电脑的绝对路径 __F...[2021/4/6]

[PHP]使用策略模式消除if else

策略模式(Strategy Pattern)定义了一组策略,分别在不同类中封装起来,每种策略都可以根据当前场景相互替换,从而使策略的变化可以独立于操作者。 大家都写过这样的代码 if (conditionA) { 逻辑1 } else if (conditionB) { 逻...[2021/4/6]

[PHP] 使用适配器模式处理数据库对象

适配器模式的定义: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那此类可以一起工作   包括两种模式: 类适配器模式与对象适配器 类适配器:Adapter类与被适配类是继承关系 对象适配器:Adapter对象与被适配类...[2021/4/6]

[PHP] 解释FastCGI与PHP-FPM的关系

php-fpm是进程管理器 , 属于master-worker多进程的模式 当请求xxx.php文件时 , 每一个子worker进程都是在读取和回应FastCGI协议的内容 fastcgi的方式是,fpm启动运行后 , 会常驻内存监听端口(默认9000) , 当web服务器收到一个请求时,...[2021/3/29]

网站整改公告 团队

为了遵守相关法律法规,合法合规运营,网站进行全面整改,整改工作于2021年3月18日12:00开始,预计于3月25日11:59结束,整改期间全站无法发布任何内容,之前发布的内容重新审核后才能访问,由此给您带来很大的麻烦,请您谅解。 原文链接:http: www.cnblogs.com/Dr...[2021/3/24]

网站整改公告 团队

为了遵守相关法律法规,合法合规运营,网站进行全面整改,整改工作于2021年3月18日12:00开始,预计于3月25日11:59结束,整改期间全站无法发布任何内容,之前发布的内容重新审核后才能访问,由此给您带来很大的麻烦,请您谅解。 原文链接:http: www.cnblogs.com/ru...[2021/3/24]

PHP中的对象比较

PHP中的对象比较

在之前的文章中,我们讲过PHP中比较数组的时候发生了什么?。这次,我们来讲讲在对象比较的时候PHP是怎样进行比较的。 首先,我们先根据PHP文档来定义对象比较的方式: 同一个类的实例,比较属性大小,根据顺序,遇到不同的属性值后比较返回,后续的不会再比较 不同类的实例,比较属性值 ===,必须...[2021/3/8]

ThinkPHP5权限管理

自己写的权限管理,大致思路:用户登陆成功之后,查出该用户的权限列表,并把权限列表存到se ion中,进入系统后,再判断该模块是否在se ion中,如果存在就说明有该权限,就显示出来,如果没有就说明没有该权限,就不显示。 可以按角色分配权限,也可以给某个人自定义权限,需要给角色分配权限时,把用户...[2021/3/8]

PHP中命名空间是怎样的存在(一)?

命名空间其实早在PHP5.3就已经出现了。不过大部分同学可能在各种框架的使用中才会接触到命名空间的内容,当然,现代化的开发也都离不开这些能够快速产出的框架。这次我们不从框架的角度,仅从简单的代码角度来解析一下命名空间的概念和使用。 首先,我们要定义命名空间是个什么东西。 其实就像操作系统的目...[2021/3/8]

PHP中命名空间是怎样的存在?(二)

PHP中命名空间是怎样的存在?(二)

今天带来的依然是命名空间相关的内容,本身命名空间就是PHP中非常重要的一个特性。所以关于它的各种操作和使用还是非常复杂的,光使用方式就有很多种,我们一个一个的来看。 子命名空间 命名空间本身就像目录一样,所以命名空间当然也是可以定义子命名空间的,真的就和操作系统的各种目录层级是完全一样的。我们...[2021/3/8]

php 二叉树遍历

二叉树是逻辑结构,二叉链表是二叉树的物理实现,是它的一种存储结构。两者之间的关系属于概念和实现,抽象和具体的关系。   前序遍历:根节点->左子树->右子树 中序遍历:左子树->根节点->右子树 后序遍历:左子树->右子树->根节点 深度...[2021/3/8]

PHP中命名空间是怎样的存在?(三)

PHP中命名空间是怎样的存在?(三)

这是与命名空间有关的最后一篇。最后还是两个比较简单的内容,是关于命名空间和全局相关的一些类、函数、常量的使用对比。当然,最后我们还会总结一下命名空间的名称解析规则做为这三篇系列文章的结束。 全局空间 当文件中定义了命名空间,也就是namesapce指定了当前的命名空间后,在调用全局类、函数、常...[2021/3/8]

use关键字在PHP中的几种用法

在学习了和使用了这么多年的PHP之后,您知道use这个关键字在PHP中都有哪些用法吗?今天我们就来看一下它的三种常见用法。 1. 用于命名空间的别名引用 命名空间 include ''namespace/file1.php''; use FILE1\objectA; use FILE1\...[2021/3/8]

变着花样来接参,PHP中接收外部参数的方式

对于PHP这样一个web语言来说,接参是非常重要的一个能力。毕竟从前端表单或异步请求传递上来的数据都要获取到才能进行正常的交互展示。当然,这也是所有能够进行web开发的语言的必备能力。今天我们就来看看PHP各种各样的接参形式。 首先,我们要准备一个静态页面,就像下面这个一样,它提供了一个表单,...[2021/3/8]

PHP网站常见安全漏洞,及相应防范措施总结

目前,基于PHP的网站开发已经成为目前网站开发的主流,本文笔者重点从PHP网站攻击与安全防范方面进行探究,旨在减少网站漏洞,希望对大家有所帮助! 一、常见PHP网站安全漏洞 对于PHP的漏洞,目前常见的漏洞有五种。分别是Se ion文件漏洞、SQL注入漏洞、脚本命令执行漏洞、全局变量...[2021/3/1]

记一次PHP的Invalid binding type问题

首先说明下环境问题,新旧服务器的迁移。代码在老服务器运行没有任何问题。环境都是PHP7.3,结果新的服务器上流量导过来以后,就报出了如下问题: FastCGI sent in stderr: "PHP me age: PHP Fatal error: Invalid binding type...[2021/3/1]

学习下Redis这个核心数据类型

学习下Redis这个核心数据类型

string 字符串 tring 类型是二进制安全的,即 string 中可以包含任何数据。 Redis 中的普通 string 采用 raw encoding 即原始编码方式,该编码方式会动态扩容,并通过提前预分配冗余空间,来减少内存频繁分配的开销。 在字符串长度小于 1MB 时,按所需长...[2021/3/1]

trait能力在PHP中的使用

相信大家对trait已经不陌生了,早在5.4时,trait就已经出现在了PHP的新特性中。当然,本身trait也是特性的意思,但这个特性的主要能力就是为了代码的复用。 我们都知道,PHP是现代化的面向对象语言。为了解决C++多重继承的混乱问题,大部分语言都是单继承多接口的形式,但这也会让一些可...[2021/3/1]

Linux下安装php-soap通过重新编译php过程

首先安装完php后最好保留当时安装的文件,比如我的路径/export1 oft     1 2 3 4 5 6 7 8 9 ; html-script: false ]  cd php-5.1.6/ext/soap     /usr/loca...[2021/3/1]

关于PHP的方法参数类型约束

在之前的文章PHP方法参数的那点事儿中,我们讲过关于PHP方法参数的一些小技巧。今天,我们带来的是更加深入的研究一下PHP中方法的参数类型。 在PHP5之后,PHP正式引入了方法参数类型约束。也就是如果指定了方法参数的类型,那么传不同类型的参数将会导致错误。在PHP手册中,方法的类型约束仅限于...[2021/3/1]

PHP内存溢出是什么样的

相信很多人做大批量数据导出和数据导入的时候,经常会遇到PHP内存溢出的问题,在解决了问题之后,总结了一些经验,整理成文章记录下。 优化点 优化SQL语句,避免慢查询,合理的建立索引,查询指定的字段,sql优化这块在此就不展开了。 查询的结果集为大对象时转数组处理,框架中一般有方法可以转,如La...[2021/3/1]

关于PHP的方法参数类型约束

在之前的文章PHP方法参数的那点事儿中,我们讲过关于PHP方法参数的一些小技巧。今天,我们带来的是更加深入的研究一下PHP中方法的参数类型。 在PHP5之后,PHP正式引入了方法参数类型约束。也就是如果指定了方法参数的类型,那么传不同类型的参数将会导致错误。在PHP手册中,方法的类型约束仅限于...[2021/3/1]

后期静态绑定在PHP中的使用

后期静态绑定在PHP中的使用

什么叫后期静态绑定呢?其实我们在之前的文章PHP中的static中已经说过这个东西了。今天我们还是再次深入的理解一下这个概念。 首先,我们通过一段代码来引入后期静态绑定这一概念: cla A { public static function who() { ...[2021/3/1]

[PHP] php使用curl_multi_exec并行同时执行http请求

当php代码要对外请求多个接口的时候 , 可以使用下面的方式并行执行多个请求 主要是使用curl_multi_exec函数实现 代码中请求的test.php文件 , 是sleep(10)秒 如果按传统的逐行执行的方式 , 请求两次这个接口代码会阻塞20秒的时间 , 现在使用同时并行执行的方...[2021/3/1]

MacOS下PHP7.1升级到PHP7.4.15的方法

最近写SDK的时候需要用到object类型提示符,PHPStorm智能提示说需要PHP7.2以上才能支持这种类型提示。 我一查我本机的PHP是7.1.30版本,于是考虑升级一下PHP版本。 首先要尝试使用如下命令进行升级: brew update brew upgrade ph...[2021/2/22]

PHP中类的自动加载

在之前,我们已经学习过Composer自动加载的原理,其实就是利用了PHP中的类自动加载的特性。在文末有该系列文章的链接。 PHP中类的自动加载主要依靠的是__autoload()和spl_autoload_register()这两个方法。今天我们就来简单的看一下这两个方法的使用。 _...[2021/2/22]

PHP中的“重载”是个啥?

PHP中的“重载”是个啥?

很多面试官在面试的时候都会问一些面向对象的问题,面向对象的三大特性中,多态最主要的实现方式就是方法的重载和重写。但是在PHP中,只有重写,并没有完全的重载能力的实现。 重写,子类重写父类方法。 重写 cla A { public function test($a) ...[2021/2/22]

PHP实现一个二维码同时支持支付宝和微信支付的示例

实现思路 生成一个二维码,加入要处理的url连接 在用户扫完码后,在对应的脚本中,判断扫码终端,调用相应的支付 若能够扫码之后能唤起相应app,支付宝要用手机网站支付方式,微信要使用jsapi支付方式 效果展示 提示: 因为项目即将上线,所以上面的支付二...[2021/2/19]

array_values()在php中返回数组的操作实例

在对数组的一些操作上,有些人对于键值方面不太理解。为了方便大家能够更好地对一些值进行返回,本篇带来了array_values() 函数进行介绍,使用后能直接返回数组。下面我们就array_values()函数的定义、语法、参数、返回值、实例进行介绍,一起都来看看返回数组的方法吧。 1、定义 ...[2021/2/18]

WEB前端第六十二课——自封装Ajax、跨域、分页

WEB前端第六十二课——自封装Ajax、跨域、分页

1.Ajax封装方法   自封装Ajax请求文件,其实就是将原生的Ajax的请求代码抽象为一个函数,   然后单独生成一个js文件保存,用到Ajax的时候引入文件,调用函数的过程。   封装Ajax大致步骤如下:     ⑴ 提供创建xhr对象的兼容性函数     ⑵...[2021/2/18]

PHP中的“重载”是个啥?

很多面试官在面试的时候都会问一些面向对象的问题,面向对象的三大特性中,多态最主要的实现方式就是方法的重载和重写。但是在PHP中,只有重写,并没有完全的重载能力的实现。 重写,子类重写父类方法。 重写 cla A { public function test($a) ...[2021/2/18]

PHP中类的自动加载

在之前,我们已经学习过Composer自动加载的原理,其实就是利用了PHP中的类自动加载的特性。在文末有该系列文章的链接。 PHP中类的自动加载主要依靠的是__autoload()和spl_autoload_register()这两个方法。今天我们就来简单的看一下这两个方法的使用。 _...[2021/2/18]

PHP匿名类的用法

PHP匿名类的用法

在PHP7之后,PHP中加入了匿名类的特性。匿名类和匿名方法让PHP成为了更现代化的语言,也让我们的代码开发工作越来越方便。我们先来看看匿名类的简单使用。 直接定义 $objA = new cla { public function getName() { ...[2021/2/18]

PHP怎么遍历对象?

对于php来说,foreach是非常方便好用的一个语法,几乎对于每一个PHPer它都是日常接触最多的请求之一。那么对象是否能通过foreach来遍历呢? 答案是肯定的,但是有个条件,那就是对象的遍历只能获得它的公共属性。 普通遍历 cla A { public $a1 ...[2021/2/18]

PHP实现一个二维码同时支持支付宝和微信支付

实现思路 生成一个二维码,加入要处理的url连接 在用户扫完码后,在对应的脚本中,判断扫码终端,调用相应的支付 若能够扫码之后能唤起相应app,支付宝要用手机网站支付方式,微信要使用jsapi支付方式 效果展示 提示: 因为项目即将上线,所以上面的支付二维码连接被我替换了(注...[2021/2/18]

WEB前端第六十一课——xhr对象POST请求、xhr兼容性、timeout、progress

WEB前端第六十一课——xhr对象POST请求、xhr兼容性、timeout、progress

1.xhr对象发送post请求   Ajax中post请求与get请求不同之处在于多了一个表单,而get请求则是通过url发送附加信息。   在xhr对象中,post请求可以通过FormData构建表单数据。   语法:var formData = new FormData(); ...[2021/2/1]

PHP的switch和ifelse谁更快?

对于多个if条件判断的情况下,我们使用switch来代替ifelse对于代码来说会更加的清晰明了,那么他们的效率对比呢?从PHP手册中发现有人已经对比过了,自己也用他的代码进行了实验: $s = time(); for ($i = 0; $i < 1000000000; ++$...[2021/2/1]

PHP的可变变量与可变函数

什么叫可变。在程序世界中,可变的当然是变量。常量在定义之后都是不可变的,在程序执行过程中,这个常量都是不能修改的。但是变量却不同,它们可以修改。那么可变变量和可变函数又是什么意思呢?很明显,就是用另一个变量来定义他们,这个变量是可变的呀! 可变变量 $a = ''hello''...[2021/2/1]

在PHP中灵活使用foreach+list处理多维数组

在PHP中灵活使用foreach+list处理多维数组

先抛出问题,有时候我们接收到的参数是多维数组,我们需要将他们转成普通的数组,比如: $arr = [ [1, 2, [3, 4]], [5, 6, [7, 8]], ]; 我们需要的结果是元素1变成1,2,3,4,元素2变成5,6,7,8,这时候,我们就可以用f...[2021/2/1]

DVWA通关之命令注入(command injection) - ruoli-s

DVWA通关之命令注入(command injection) 难度等级:low 过关思路 我们先将其难度设置为low,看到其界面如下: 通过分析得知,该功能是输入一个IP地址,然后通过ping进行测试,先输入127.0.0.1和www.baidu.com测试如下: 127....[2021/2/1]

对象赋值在PHP中到底是不是引用?

之前的文章中,我们说过变量赋值的问题,其中有一个问题是对象在进行变量赋值的时候,直接就是引用赋值。那么到底真实情况是怎样呢? 之前变量赋值的文章 PHP的变量赋值 对象引用测试 在继续深入的学习PHP手册后,发现原来对象还真不是直接的引用复制。通过下面手册中的例子来进行分...[2021/2/1]

87
2
记录数:3013 页数:1/6112345678910下一页尾页
加载更多
 友情链接: NPS