
PHP
文章平均质量分 83
紫沐星
Hello world!
展开
-
laraver 用户认证auth、数据迁移和填充
用户认证生成:php artisan make:authAuthentication scaffolding generatedsuccessfully. 1.路由web.phpAuth::routes();所指路径是指:vendor/laravel/framework/Illuminate/src/routing/router.php 里面auth方法 2.数据迁原创 2017-09-30 14:07:10 · 640 阅读 · 0 评论 -
整理了一份招PHP高级工程师的面试题
1. 基本知识点HTTP协议中几个状态码的含义:1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 2xx (成功)表示成功处理了请求的状态代码。代码转载 2016-08-17 15:35:32 · 5126 阅读 · 0 评论 -
如何对phpcms v9的首页列表进行分页?
如何对phpcms v9的首页数据列表进行分页?我在phpcms论坛上看到很多相关的帖子提到,但都没有解决这个问题。提出这个问题的人,是想把phpcms v9做成博客的样子,但是不是有很多优秀的博客程序吗,PHP的如WordPress,ASP有zblog等,可能是看中phpcms v9的强大功能吧。说真的我也有这个构想,于是我尝试着使用phpcms v9做成博客,然后对首页数据列表进行分页,发转载 2016-08-17 10:00:12 · 3619 阅读 · 0 评论 -
phpcms数据库操作
一、查①select($where = '', $data = '*', $limit = '', $order = '', $group = '', $key='')/** * 执行sql查询 * @param $where 查询条件[例`name`='$name'] * @param $data 需要查询的字段值[例转载 2016-08-16 15:18:48 · 891 阅读 · 0 评论 -
phpcms v9二次开发及使用中各种问题解决方案(一)
phpcms v9二次开发及使用中各种问题解决方案(一)模板调用1、内容标签,序号123456789的调用?{pc:contentaction="lists"catid="$catid"ord...phpcms v9二次开发及使用中各种问题解决方案(一)模板调用1、内容标签,序号123456789的调用?{pc:content action="lists" catid=转载 2016-08-16 14:22:57 · 2931 阅读 · 0 评论 -
PHP二分法查找,MYSQL索引即为用了此查找
算法:当数据量很大适宜采用该方法。采用二分法查找时,数据需是排好序的。主要思想是:(设查找的数组区间为array[low, high])(1)确定该区间的中间位置K(2)将查找的值T与array[k]比较。若相等,查找成功返回此位置;否则确定新的查找区域,继续二分查找。区域确定如下:a.array[k]>T 由数组的有序性可知array[k,k+1,……,high]>T;故新的区间翻译 2017-11-08 10:36:37 · 474 阅读 · 0 评论 -
laravel 目录
目录APP包含:核心代码http:Cbootstrap:启动目录config:配置database:数据库填充路径public CDN目录resources Wstorage缓存、编译tests 测试代码vendor laravel主要文件原创 2017-09-29 10:13:26 · 567 阅读 · 0 评论 -
面向对象的设计模式及魔术函数
1.工厂模式: a.概述: 工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程(new 关键字和具体的构造器)隐藏起来。用一个工厂方法来替代,对外提供的只是一个工厂方法,达到提高灵活性的目的。 b.优点: 1.隐藏了new关键字和构造器 2.降低了这个对象与别的类之间的耦合度,提高了程序的可扩翻译 2017-11-08 13:46:39 · 362 阅读 · 0 评论 -
平时优化SQL的集合
cms_program表里字段有80多个,数据有300多W,我来时就这样了~~~额,问领导反应过,,,,额,,,案例一:select * from `cms_program` where `fr_dict_epg_status` = 64 and `fr_tb_source` = 2 order by `id` asc limit 50 offset 0平均12秒左右优化后的其原创 2017-11-09 11:23:43 · 238 阅读 · 0 评论 -
数组A,有一千万个数,数组B同样也有千万多个数,然后从A和B当中随意找一个数字A1和B1,A1-B的绝对值是C,保证C最小。求A1和B1
$a = [-11,-5,-9,-3,-2,-1]; $b = [-20,-13,-4,6,77,200]; $key = $a[rand(0,count($a)-1)];sort($b);echo "\n=====================\n";print_r($b);echo $key."\n=====================\n";if(c原创 2017-11-03 10:02:33 · 517 阅读 · 0 评论 -
限制内存用快排原理PHP
马上来写原创 2017-11-03 10:57:52 · 299 阅读 · 0 评论 -
Phalcon和YII的优点
Phalcon 优点为是C写的框架,Phalcon中的所有函数都以PHP类的方式呈现,开发者无需学习和使用C语言,且无需担心性能问题,以高性能和低消耗著称Yii 优点为快速、安全和专业的,同时它也是一款开发WEB 2.0应用的高性能PHP框架,Yii的功能非常强大,内置以下功能:MVC、DAO/ActiveRecord、I18N、权限验证、缓存、安全控制、测试、数据访问对象等原创 2016-11-16 14:26:49 · 2344 阅读 · 0 评论 -
yii2 命名空间
namespace 同一个目录下不需要再use例如原创 2016-12-26 11:09:08 · 872 阅读 · 0 评论 -
laravel 文件上传
文件上传Laravel的文件系统是基于Frankde Jonge的Flysystem扩展包提供了简单的接口,可以操作本地端空间,Amazons3,Rackspace Cloud Storage可以非常简单的切换不同保存方式,但仍使用相同的API操作 配置文件1.Config/filesystems.php 'disks' => [ 'local'原创 2017-09-30 14:53:20 · 627 阅读 · 0 评论 -
laravel 邮件SwiftMailer
邮件SwiftMailerLaravel的邮件功能基于热门的SwiftMailer函数库之上,提供了一个简洁的APILaravel 为SMTP,Mailgun,Mandrill,AmazonSes,PHP的mail函数,以及sendmail提供了驱动从而允许你快速通过本地或云服务器发送邮件 配置文件在Config/mail.php1. 修改配置文件//发件邮箱原创 2017-09-30 15:56:01 · 2281 阅读 · 0 评论 -
laravel nosql
缓存:Laravel为各咱不同的缓存系统提供一致的APILarael支持各种常见的后端缓存系统,如File,Memcached和Redis 配置文件Config/cache.php controller public function cacheSet() { //put()保存对象到缓存 //10是10分钟原创 2017-09-30 16:32:27 · 482 阅读 · 0 评论 -
laravel debug,http模式,日志
Debug 模式配置文件Config/app.php进行本地开发时,应该配置APP_DEBUG环境变量为TRUE,在上线时,永远为FALSE HTTP模式有些异常描述来自服务器的HTTP错误码例如:404,401,500//向服务器抛出异常,展示的是view/errors下面的503.blade.phpabort(503); 日志Lara原创 2017-09-30 17:08:21 · 5990 阅读 · 0 评论 -
laravel 队列queue
队列Laravel队列服务为各种不同的后台队列提供统一的API允许推迟耗时任务(例如发送邮件)的执行,从而大幅提高web请求速度 配置文件Config/queue.php支持模式 Supported: "sync", "database","beanstalkd", "sqs", "redis", //默认选择的是同步驱动'default' =>env('QUEUE原创 2017-09-30 18:00:07 · 4031 阅读 · 0 评论 -
PHP默认识别的数据类型是application/x-www.form-urlencoded标准的数据类型
application/x-www-form-urlencoded:窗体数据被编码为名称/值对。这是标准的编码格式。multipart/form-data:窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。text/plain:窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符$header = array("Content-type: application/json");原创 2017-03-16 09:57:49 · 5106 阅读 · 0 评论 -
一直用PDO,PHP中操作MYSQL数据库常用函数还记得不
1、mysql_connect()-建立数据库连接 格式: resource mysql_connect([string hostname [:port] [:/path/to/socket] [, string username] [, string password]]) 例: $conn = @mysql_connect("localhost", "username", "p转载 2017-09-22 16:58:31 · 1061 阅读 · 0 评论 -
大型架构
一、大型网站的特点用户多,分布广泛大流量,高并发海量数据,服务高可用安全环境恶劣,易受网络攻击功能多,变更快,频繁发布从小到大,渐进发展以用户为中心免费服务,付费体验 二、大型网站架构目标高性能:提供快速的访问体验。高可用:网站服务一直可以正常访问。可伸缩:通过硬件增加/减少,提高/降低处理能力。安全性:提供网站安全访问和数据加密,安全存储等策略。扩展性:方便的通过新增/移转载 2017-09-22 16:32:32 · 727 阅读 · 0 评论 -
YII2 Exception
yii\authclient\Invalid Response Exceptionyii\base\Invalid Config Exceptionyii\base\Invalid Route Exceptionyii\base\Not Supported Exceptionyii\base\Unknown Class Exception yii\base\Unknown Pr原创 2017-02-08 10:03:32 · 2194 阅读 · 0 评论 -
PHPCMS V9自定义分页函数
大家做网站的时候,可能很多时候分页样式都得根据模板的要求来控制的,这时很多人都会去修改全局文件phpcms\libs\functions\global.func.php里的pages()函数,这样问题就来了:这个分页函数连后台也会影响到的,就是说,这个分页函数是全站共用的。下面提供解决方法:(这个得修改文件,修改前记得备份)打开phpcms\libs\functions\global.转载 2016-08-17 09:22:21 · 487 阅读 · 0 评论 -
不限制内存用桶排序PHP
马上来写原创 2017-11-03 11:00:23 · 277 阅读 · 0 评论 -
大数据量及海量数据处理算法总结
下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。 1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点: 对转载 2017-11-03 15:58:27 · 4812 阅读 · 1 评论 -
几道大数据面试题
几道大数据面试题http://blog.youkuaiyun.com/samjustin1/article/details/52251180#面试算法题http://blog.youkuaiyun.com/samjustin1首先处理大数据的面试题,有些基本概念要清楚:(1)1Gb = 109bytes(1Gb = 10亿字节):1Gb = 1024Mb,1转载 2017-11-03 16:00:31 · 550 阅读 · 0 评论 -
手动安装PHP7
此版本:7.2.4所需:gcc autoconfig解压:tar -xjvf php-7.2.4.tar.bz2 configure:配置 vi configure 对要安装的软件进行配./置,监查当前软件跟当前环境的依赖关系 ./configure --help安装到哪个路径./configure --prefix=/home/workmake:构建make构建成功,再运行make test 检...原创 2018-04-20 15:27:42 · 2820 阅读 · 0 评论 -
源码编译安装 swoole
https://gitee.com/swoole/swoole/tree/v2.1.2git下载源码git clone https://gitee.com/swoole/swoole.git利用phpize bin目录下1、phpize是干嘛的?phpize是什么东西呢?php官方的说明:http://php.net/manual/en/install.pecl.phpize.phpphpize是...原创 2018-04-20 18:10:29 · 2621 阅读 · 0 评论 -
swoole TCP UDP server
https://wiki.swoole.com/TCP<?php/** * Created by PhpStorm. * User: whitneywang * Date: 2018/4/20 * Time: 18:21 *///创建Server对象,监听 127.0.0.1:9501端口$serv = new swoole_server("127.0.0.1", 9501...原创 2018-04-20 19:13:09 · 515 阅读 · 0 评论 -
swoole UDP TCP客户端
WARNING swSocket_bind (ERROR 502): bind(127.0.0.1:9501) failed. Error: Address already in use提示接口已经被占用查看端口:netstat -anp | grep 9501 杀掉:kill 26679类似于nginx 这种服务<?php //连接 SWOOLE TCP服务$client = new ...原创 2018-04-25 15:07:56 · 1228 阅读 · 0 评论 -
SWOOLE httpserver
目前PHP项目基本上都是HTTP server ,nginx 代理转发$http = new swoole_http_server("0.0.0.0", 9503);//设置静态资源$http->set([ 'enable_static_handler' => true, 'document_root' => '/home/demo/data' //静态资源...原创 2018-04-25 17:12:59 · 1064 阅读 · 0 评论 -
swoole websocket服务
websocket协议是基于TCP的一种新网络协议,它实现了浏览器与服务器全双工(full-duplex)通信--可以让服务器主动发送信息给客户端为什么用websocketHTTP的通信只能由客户端发起,比如ajax轮寻啊websocket特点:1.建立在TCP协议之上2.性能开销小通信高效3.客户端可以与任意服务器通信4.协议标识符WS WSS跟HTTPS一个概念5.持久化网络通信协议 服务器主...原创 2018-04-25 18:40:37 · 1517 阅读 · 0 评论 -
单例,工厂
单例模式又称为职责模式,它用来在程序中创建一个单一功能的访问点,通俗地说就是实例化出来的对象是唯一的。danli.class <?php class Danli { //保存类的实例的静态成员变量 static private $_instance=null; //私有的构造方法...翻译 2018-05-14 15:06:52 · 734 阅读 · 0 评论 -
jsTree 多级树结构加子节点分页
$('#tree') .jstree({ "core" : { "check_callback" : true, 'data' : { "url" : function(data){ return '/admin/ajax/list'; ...原创 2018-09-30 13:46:28 · 2806 阅读 · 0 评论 -
PHP CURL 哈哈哈哈哈记录一下
curl_setopt($curl, CURLOPT_POST, true);curl_setopt($curl, CURLOPT_POSTFIELDS, $params);Note:传递一个数组到CURLOPT_POSTFIELDS,cURL会把数据编码成 multipart/form-data,而然传递一个URL-encoded字符串时,数据会被编码成 application/x-...原创 2018-10-16 11:25:40 · 178 阅读 · 0 评论 -
restful总结
一.restful是什么?本质上是一种软件架构风格,核心是面向资源去设计API设计概念和准则1.网络上的所有事件都可以被抽象为资源2.每一个资源都有唯一的资源标识,对资源的操作不会改变这些标识3.所有的操作是无状态的二.为什么要使用restful?解决的问题有:1.减低开发的复杂性2.提高系统的可伸缩性三.HTTP协议-URLhttp 是一个属于应用...原创 2019-03-28 15:49:21 · 270 阅读 · 0 评论 -
Nginx配置upstream实现负载均衡
如果Nginx没有仅仅只能代理一台服务器的话,那它也不可能像今天这么火,Nginx可以配置代理多台服务器,当一台服务器宕机之后,仍能保持系统可用。具体配置过程如下:1. 在http节点下,添加upstream节点。upstream linuxidc { server 10.0.6.108:7080; server 10.0.0.85:8980;翻译 2017-12-28 10:41:58 · 422 阅读 · 0 评论 -
二叉树 -php实现先序、中序、后序遍历二叉树
二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆[php]view plaincopyclass Node{public $value;public $left;public $right;}//先序遍历转载 2017-11-03 16:01:48 · 547 阅读 · 0 评论 -
死锁产生的原因和解锁的方法
死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。死锁产生的原因和解锁的方法产生死锁的四个必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进程因请求资源而阻塞转载 2017-11-03 16:12:29 · 610 阅读 · 0 评论 -
深入理解HTTP协议、HTTP协议原理分析
1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版转载 2017-11-10 15:38:15 · 519 阅读 · 0 评论