1 weixin_44187959

尚未进行身份认证

暂无相关描述

等级
TA的排名 128w+

PHP 总结一下大部分的魔术方法

1、__construct:构造方法类的构造方法,在类被实例化的同时发生该事件2、__destruct:析构函数该函数在类被删除的时候发生3、__call():重载方法当调用的方法在类中不存在或者该方法为私有等权限不足时,自动调用该方法4、__callStatic:静态重载函数当访问类中的静态方法不存在或者权限不足时发生4、__get()当访问类的属性不存在或者权限...

2019-07-22 11:35:19

PHP将网页内容变成pdf(几乎无损)

前几天,做了一个小项目,全程几乎没什么太大的问题,但是在实现页面内容自动生成pdf然后推送邮件这块感觉到一丝丝的麻烦,前前后后找过mpdf,dompdf,fpdf等等。。。太多了,都是泪水。遇到了都是类似float定位的问题,不是中文字符不支持就是样式显示不准确。惨不忍睹!然后呢。。开始找资料于是就有了新的办法–wkhtmltopdf就是这个东西。几乎涵盖所有平台简单介绍一下这个插件。只...

2019-07-22 10:39:39

PHP序列化对象(serialize)和json_encode对比

今天突然看到一本书上讲的是序列化,挺感兴趣的研究了一下,贴一下研究成果,首先上测试代码:分别测试了序列化和json_encode对对象和数组的编码测试,如下:<?phpclassperson{protected$name='张三';protected$age=22;protected$job='admin';publicfunct...

2019-07-22 09:57:28

详解PHP中const、static、define异同

1、define该函数通常用于类外部、函数内部定义常量,一旦定义不可改变。例:<?phpdefine(__TEST__,'testValue');var_dump(__TEST__);classtest{publicfunction__construct(){define(__RETEST__,'revalue');...

2019-07-16 15:41:26

详解PHP的超全局变量GLOBALS

1、globals是php用于保存所有运行信息的超全局函数,它主要包括·$GLOBALS·$_SERVER·$_REQUEST·$_POST·$_GET·$_FILES·$_ENV·$_COOKIE·$_SESSION$GLOBALS:该函数主要用于保存全局变量<?php$i=1;var_dump($GLOBALS['i']);...

2019-07-16 15:18:25

通过PHP(socket_select)阻塞函数实现公共即时聊天

研究了一周,重要搞明白liunx网络编程的socket函数。下面是通过socket_select阻塞的方式实现php公共聊天的简易聊天室。<?phpclasswebSocket{/***服务端地址**@var[type]*/private$address;/***服务端绑定的端...

2019-07-11 13:16:13

ThinkPHP 3.2源码分析——系统的App的执行流程

PS:如果是从我前面一篇文章过来的小伙伴,请忽略,如果是新来的小伙伴,如果你对app执行之前系统做了啥不太了解,可以参考我的另一篇文章:https://blog.csdn.net/weixin_44187959/article/details/93589445下面我们开始来说thinkphp3.2的app.php到底做了啥//----------------------------//...

2019-06-25 11:44:54

ThinkPHP 3.2源码分析——从URL到系统设置

【一、架构简述】可能一开始就开始分析源码的结构可能很多人不明白,那我就先大概说说thinkphp开发者的设计思路吧。大概可以分为这几个阶段:1、依赖检测阶段在这阶段里主要检测当前的环境是否满足要求,主要指php的版本等等。2、参数加载阶段在这个阶段主要是将目前框架所需要的参数组成一个参数依赖数组。方便程序统一调用。3、加载切片函数和用户自定义控制器模块在这一阶段由于th...

2019-06-25 09:54:10

总结一下PHP中的会话机制(keep-alive,Session,cookie)以及JWT

【1、先讲讲会话机制的必要性吧】在说会话之前我们顺带了解一下http的工作原理。我们现说说过程吧。首先用户根据浏览器输入的地址经过dns的解析会发送到对应的服务器上进行处理。第一次握手:主机A发送位码为syn=1,随机产生seqnumber=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;第二次握手:主机B收到请求后要确认联机信息,向A发送acknumb...

2019-06-17 09:37:30

关于PHP的自动加载知识整理

1.先说说上个世纪的引入案例吧在没有php自动加载的时候很多小项目都采用require和include的方式来加载其他类里面的内容。将很多其他类的内容通过这种方式加载到php的函数根目录下面。实现类的复用。但是也有一部分问题如下:1、首先是方法名的重复。代码的增多难免会导致方法的重名,比较难处理。2、软件的维护工作比较繁琐。看的头晕眼花。。。。3、代码看起来不是特别顺眼,比较别...

2019-06-13 15:10:39

总结整理一下PHP的异常与错误知识

【一、什么是异常?什么是错误?】首先我也被这个问题困扰了很久,也看了好多资料。我大概给客官们讲讲我理解的错误与异常吧。欢迎留言补充!1、异常 异常简单来说指的是程序运行当中出现的一些意外。比如说我目前想去连接数据库,但是在连接的过程当中由于超时而导致程序报出一个未捕捉的异常。这种异常通常不是语法或者程序执行的逻辑错误而是程序执行的意外。2、错误错误的概念正好与异...

2019-06-03 13:27:18

说说layui的form中的二级联动select注意点

【1.加载layui框架】这个请移驾https://www.layui.com不多讲。【2.举个例子】//先给出html代码<formaction=''method='post'class='layui-form'> //这个是一级 <divclass="layui-input-inline"> <selectclass="lay...

2019-05-28 11:31:10

thinkphp5.1在PHP7下使用phpmailer发邮件 说说这个坑!

【1.composer安装phpmailer】由于我是macwindow用户直接百度一下composer安装phpmailer;mac、linux用户首先cd到thinkphp的根目录、然后在终端输入:composerrequirephpmailer/phpmailer【2、设置邮箱】由于我用的163的邮箱,所以我就以163为例。qq邮箱往上有很多例子,我就不重复造轮子了。1...

2019-05-24 11:54:06
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。