will5451的博客

我是我

  • 博客(535)
  • 资源 (5)
  • 收藏
  • 关注

原创 将迭代器中元素(对象)放入数组中

/** * @param $obj * @return array */ public function iterator_array($obj) { $result = []; foreach (\$obj as \$row) { \$result[] = iterator_to_

2017-11-19 23:31:06 872

原创 php实现简易的搜索功能

好久没有看代码了,手生了,一直在盘算着转行的事; 1,今天看了一个接手的项目的源代码,发现一小段简易搜索的代码2,/** * 简易搜索 * @param $params * @param $black * @return array */ protected function _commonSearch($params, $bl

2017-11-19 16:55:15 6597

原创 win下wampserver集成包配置多站点虚拟主机出现的问题(forbidden)

首先开启虚拟主机在wamp集成包bin下apache的配置文件夹中httpd.conf,将注释放开,从而开启虚拟主机,原有的默认访问失效。 然后配置httpd-vhost.conf虚拟主机站点,把如下示例删除或者注释 然后配置一个如下的虚拟主机站点 注意虚拟主机站点中的权限顺序要这样: Order deny,allow 否则报错forbidden;另外注意***Allow from a

2017-10-23 17:08:16 557

原创 Yii2框架Nginx配置以及修改fastcgi.conf实现URL美化

nginx配置设置了两个路径,一个是项目路径,另外一个是项目入口的路径位置。 配置如下图片: location /api/web{ root $prj_root; } 下面是yii2框架的urlmanager配置: 就这样配置好后,但是还是会报错,open_dir()之类的错误如下open_dir()错误解决open_basedir错误处于这样的错误;首先查看了下ph

2017-10-23 14:03:52 3977

原创 配置yii2的路由跟TP一样nginx(支持pathinfo路由模式)

原因配置了一会儿,发现nginx配置是正确的;但是发现还是不能支持pathinfo路由的格式,真是奇怪了; 后来发现是nginx没有加载enable-php-pathinfo.conf这个配置文件。 直接上图了吧: 注意加载这个配置:include enable-php-pathinfo.conf yii2框架中config/web.php配置文件

2017-10-23 00:35:37 1206

转载 [路由] -- Yii2 url地址美化与重写[2.0版本]

第一个教程原文地址:http://www.cnblogs.com/magy/p/4314687.html目的:我只想去掉浏览器地址栏中的index.php?r=这一块。在/config/web.php中 ’components'=>[] 中添加如下代码:1 'urlManager' => [2 'enablePret

2017-10-22 23:45:06 1164

原创 Yii2 路由之同时支持 URL 原始和美化的请求 [ 2.0 版本 ]

1,刚开始的时候,我们使用yi i2时候直接采用的最原始的访问的url方法去访问的。 例子: http://frontend.domain.com/index.php?r=index/site/index http://frontend.domain.com/index.php?r=index/article/view&id=1 … 2,使用yii2的URL美化,

2017-10-22 22:52:58 875

转载 Yii2安装,关于The file or directory to be published does not exist错误

按照yiichina指南中的方法安装Yii2, 安装完成后肯定会遇到报错的。The file or directory to be published does not exist: /path/vendor/bower/jquery/dist文档中的命令如下composer global require "fxp/composer-asset-plugin:~1.0.0"c

2017-10-22 19:53:17 2293

转载 web通信之长连接,长轮询(long polling)

什么是长连接,长轮询客户端不同向服务器端发送请求,获取最新的信心。长连接、长轮询的应用场景长连接,长轮询一般应用与webIM,chatRoom一些需要及时交互的网站应用中。 如果你对服务器端的反向Ajax感兴趣,可以参考这篇文章 DWR 反向Ajax 服务器端推的方式:http://www.cnblogs.com/hoojo/category/276235.html优缺点轮询:客户端定时向服务器端

2017-10-11 19:37:47 1337

原创 构建基于socket的HTTP请求类[转]

现在做一些Api开发的时候官方会有一些SDK,这些SDK其实原理都是通过socket来通讯的示例类<\?php class Http{   const CRLF = “\r\n”;   private $line = array(); #请求行 private \$url = ”; private \$head = array(); //请求的主体 private \

2017-09-15 18:03:17 619

原创 php-socket理论代码(02)

socket_server服务器端:<\?php /* +——————————- * @socket通信整个过程 +——————————- * @socket_create * @socket_bind * @socket_listen * @socket_accept * @socket_read * @socket_

2017-09-15 16:35:33 289

原创 php-socket理论(01)

建立Socket连接至少需要一对套接字,其中一个运行于客户端,称为ClientSocket ,另一个运行于服务器端,称为ServerSocket 。 套接字之间的连接过程分为三个步骤:服务器监听,客户端请求,连接确认。 服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态,等待客户端的连接请求。 客户端请求:指客户端的套接字提出连接请求,要连接的目标是

2017-09-14 15:49:45 307

原创 websocket+php+socket聊天室

客户端(聊天前端页面):html> mychat_socket charset="utf-8"> name="viewport" content="width=device-width,initial-scale=1, maximum-scale=1, user-scalable=no"> href="https://cdn.bootcss.com/bootstrap/

2017-09-14 11:11:32 2613

原创 php基于websocket搭建简易聊天室(socket)

前言http连接分为短连接和长连接。短连接一般可以用ajax实现,长连接就是websocket。短连接实现起来比较简单,但是太过于消耗资源。websocket高效不过兼容存在点问题。websocket是html5的资源前端//连接socket var ws = new Websocket(‘ws://127.0.0.1:8080’); //成功连接socket的时候 ws.onopen = f

2017-09-13 13:29:21 4124

原创 websocket原理

一、websocket与httpWebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算) 首先HTTP有 1.1 和 1.0 之说,也就是所谓的 keep-alive ,把多个HTTP请求合并为一个,但是 Websocket 其实是一个新协议,跟HTTP协议基本没有关系,只是为了兼容现有浏览器的握手规范而已,

2017-09-12 15:46:44 2336 4

原创 php命名空间(namesapce)使用详解

命名空间的主要目的命名空间的最明确目的是为了解决类重命名问题,php不允许两个函数或者类出现相同的名字;否则产生致命错误,这个时候就可以考虑到使用命名空间去解决这个问题;备注php5.3开始const关键字可以用在类的外部;在命名空间中,define的作用是全局的;const的作用于当前空间;基础命名空间将代码划分出不同的空间(区域),每个空间的常量、函数、类(为了偷懒,我下边都将它们称为元素)的名

2017-09-12 12:00:49 647

转载 防止SQL注入的五种方法

摘要 防止SQL注入 一、SQL注入简介 SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。二、SQL注入攻击的总体思路 1.寻找到SQL注入的位置 2.判断服务器类型和后台数据库类型 3.针对不通的服务器和数据库特点进行SQL注入攻击三、SQL注入攻击实例 比如在一个登录界

2017-09-11 09:06:22 17170 1

原创 HTTP三次握手协议以及四次挥手

TCP(Transmission Control Protocol)传输控制协议; tcp是主机对主机的传输控制协议,提供可靠的服务,采用三次握手建立连接。 位码,即tcp标志位,有6种标志:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)第一次握手:

2017-09-08 21:11:52 478

转载 BAT面试的理论题目

PHP的整型溢出问题是怎样的?php的整型的字长和平台有关,对于32位操作系统,最大的整型有二十多亿,其实就是2的31次方,最小为-2的31次方,PHP不支持无符号的整数。如果一个数超出了integer范围,将会被自动解释为float。如果执行的运算结果超出了 integer 范围,也会返回 float。HTTP协议1.0及1.1的区别,并简单说下HTTP协议HTTP,超文本传输协议。它定义了浏览器

2017-09-08 18:05:48 276

原创 php实现页面静态化

PHP文件执行顺序语法解析 => 编译 => 运行动态程序1,连接数据库服务器或者缓存服务器。 2,获取数据 3,填充到模版 4,呈现给用户配置项output_buffering : 开启缓存函数ob_start() : 打开输出缓存 ob_get_contents() : 返回输出缓存区的内容 ob_get_clean():得到当前缓存区的内容并删除当前输出缓存。 ob_clean

2017-09-08 16:12:49 342

原创 php版本间区别

关于php5.xphp5.3在稳定性上要更好;增加了很多php5.2x没有功能;比如:内置了php-fpm;完善垃圾回收算法;命名空间的引入;关于TS(线程安全)和NTS(非线程安全)TS指Thread Safety,即线程安全,一般在IIS以ISAPI方式加载的时候选择这个版本。 NTS即None-Thread Safe,一般以fast cgi方式运行的时候选择这个版本,具有更好的性能。 从2

2017-09-08 14:50:48 7053 2

原创 for和foreach的效率比较

foreach的性能要比for要高;因为for循环要进行一个array.GetLength来获取数组最大下标。 当然只是相对的 1,如果只是读数据,选择foreach 2,如果只是写数据,选择for

2017-09-08 10:42:45 4608

原创 nginx+php运行原理(以及nginx和php-fpm)

nginx服务器作用1,前端服务器:负责http请求解析转发,或者处理静态请求。轻量级,并发量高,可以作为反向代理,负载均衡。 应用服务器:负责调用某种语言的解释器,或则某某种语言写的程序,接受http请求,按照开发者意图做出动作,把结果返回给请求。Fastcgicgi:全称common gateway interface 是应用服务器与语言相关的处理程序之间的接口。 处理程序调用这个接口,

2017-09-08 09:23:16 2485

原创 ssh2扩展执行远程登录命令以及执行多个命令

ssh2的使用方式:$connect=ssh2_connect("192.168.1.2",22);ssh2_auth_password($connect,user,pass);$stream=ssh2_exec($connect, "ls /home");stream_set_blocking($stream, true);$output = stream_get_conte

2017-09-03 23:19:04 6699

原创 查找目录下所有文件中是否包含某个字符串

查找目录下所有文件中是否包含某个字符串find .|xargs grep -ri "IBM" 查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名 find .|xargs grep -ri "IBM" -l 另外:    grep 'IBM' -RHn *

2017-09-03 18:59:46 1173

转载 XunSearch(讯搜)的使用教程步骤(笔记2)

一、安装编译工具 yum install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel 二、进入欲安装文件夹 例如:cd /usr/loacl/运行下面指令下载、解压安装包wget http://www.xunsearch.com/down

2017-08-15 17:48:20 1845

转载 全文索引xunsearch的详细讲解及sphinx的比较(笔记1)

一、获取:xunsearch下载地址: http://www.xunsearch.com/site/download。linux命令行下载:wget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2 解压:tar -xjf xunsearch-full-latest.tar.bz2

2017-08-15 11:52:16 1619

转载 curl_init()和curl_multi_init()多线程的速度比较

php中curl_init()的作用很大,尤其是在抓取网页内容或文件信息的时候,例如之前文章curl获得header检测GZip压缩的源代码就介绍到curl_init()的强大。curl_init()处理事物是单线程模式,如果需要对事务处理走多线程模式,那么php里提供了一个函数curl_multi_init()给我们,这就是多线程模式处理事务的函数。curl_init()与cur

2017-07-28 17:56:33 776

原创 php中的curl的一些参数总结

curl可以根据是否是http或则是https选择加密发送的内容;使用curl发送请求的基本流程1,初始化连接句柄;2,设置curl选项;3,执行并获取结果;4,释放curl连接句柄;例子://初始化$ch = curl_init();//设置选项curl_setopt($ch,CURLOPT_URL,"http://www.baidu.com");cu

2017-07-27 17:55:59 1286

转载 php模拟并发

并发请求理论描述:假设有一个client,程序逻辑是要请求三个不同的server,处理各自的响应。传统模型当然是顺序执行,先发送第一个请求,等待收到响应数据后再发送第二个请求,以此类推。就像是单核CPU,一次只能处理一件事,其他事情被暂时阻塞。而并发模式可以让三个server同时处理各自请求,这就可以使大量时间复用。画个图更好说明问题:前者为阻塞模式,忽略请求响应等时间,总耗时为700

2017-07-25 17:16:46 657

原创 php-redis队列实现抢购商品

公司业务,为了对抗高并发业务,使用redis队列机制,大家可以一起参考参考1,用户点击某个商品,首先进入的是商品详情页面,这时候我们将商品库存进行入队列   /*******************判断商品库存够不够,进行队列*************************//*******************当天库存数量是否大于当天下单量订单数量******/$member

2017-06-14 09:17:50 9220 3

原创 lnmp一键安装包搭建的环境,mysql在局域网内连接不上的问题

今天做个小小的笔记把,关于lnmp一键安装包搭建的mysql在局域网内链接不上的问题我在我的mac本本上连接时候,会出现can not to mysql server on 'xxx.xxx.xxx'(36) 错误所有的关于连接不上mysql问题的解决方案都试过了一边,最后发现为了安全LNMP默认是禁止远程连接的解决办法是:   1,查看已有的iptables规则,以序号显示 

2017-06-09 22:49:24 1435

转载 异常断电后gitlab无法使用,访问出现502错误

查看gitlab-shell.log WARN -- : gitlab-shell: Access denied for Git command Android.git'> by user with key key-8.ERROR -- : API call failed: 500运行checkCheck GitLab API access: FAILED

2017-06-05 10:57:06 3778 2

原创 php7安装redis扩展

如果安装的php版本是php7版本的话,当安装扩展的时候会'报错;此时需要安装对应的phpredis---php7的版本的redis扩展;一、安装Redis1.创建redis用户组和用户groupadd redisuseradd -r -g redis -s /sbin/nologin -M redis2.下载redis源码包,将源码包放到/usr/local

2017-06-04 23:42:56 1773

转载 mysql开启慢查询日志及查询

MySQL慢查询配置1. 慢查询有什么用?它能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化.2. 如何开启慢查询?首先我们先查看MYSQL服务器的慢查询状态是否开启.执行如下命令:show variables like '%quer%';我们可以看到当前log_sl

2017-05-27 10:30:49 308

转载 MySQL 'root'@'localhost'无法登录

localhost无法登陆的问题:由于公司的mysql是用rpm包安装的,所以会引起很多小疏忽;问题解决一:今天早上同事说MySQL root账号登录不上了。我试了一下 #mysql -u root -p 提示”Access denied for user ‘root’@’localhost’ (using password: YES)”因为年后有同事离职,我第

2017-05-26 23:49:53 17211 1

转载 Window环境下mysql读写分离以及主从配置(不错可以的)

(1)基本的理论知识:首先,要实现mysql的读写分离,可以使用mysql的主(master)从(slave)复制(Replication)来实现:主(master)库只提供写数据的服务,而从(slave)库只提供读数据的服务。什么是主从复制?简单来说,就是主(master)库把对数据改动的操作保存到一个文件里面,而从(slave)库会隔一个时间间隔根据这个文件更新

2017-05-25 17:26:04 3083

原创 shopNC中mysql配置主从进行读写分离的坑

哎,回老家南昌了工作,突然觉得上海真是好,不吐槽了,今天在公司配置了下读写分离,shopNC的二次开发; 1,其实网上有些文档的配置可能是老版本或者有些误导;上图: 这样配置了后,突然发现主服务器master进行的CURD不支持了,导致后面程序没进行;2,我是这样配置才使得程序运行正常了:

2017-05-25 16:43:12 1119

原创 curl的另外一种简便写法

$curl = curl_init();curl_setopt_array($curl, array( CURLOPT_PORT => "8080", CURLOPT_URL => "http://121.42.185.57:8080/xservice/safes/5ccf7fc0f2f4/warning", CURLOPT_R

2017-05-23 11:29:22 963

转载 mysql-proxy实现mysql主从库读写分离

http://blog.csdn.net/aspnet_lyc/article/details/50359529MySQL的主从架构模型可以用来进行备份、故障迁移、或者读写分离来分担负载。 采用读写分离时,在程序中通过封装数据库访问层可以实现写操作连接主库,读操作连接从库。但是当从库较多时,程序中对多个从库做切换比较麻烦。mysql官方为我们提供了mysql-proxy这个

2017-05-22 17:32:03 431

2023年中项系统集成工程师案例分析和计算重点收集

2023年中项系统集成工程师案例分析和计算重点收集.

2023-05-26

2023年系统集成工程师必背常考点-手打草稿版本

2023年系统集成工程师必背常考点-手打草稿版本;质量管理;质量控制;新老七种工具;知识点简化

2023-05-24

antvx6 流程设计器+ vite + vue3

antvx6 流程设计器+ vite + vue3

2022-12-26

傲梅电脑分区软件,不用格式化

傲梅电脑分区软件。轻松上手

2022-05-16

文档转换工具(excel转word,pdf,互转工具)

excel转word,pdf,互转工具;word转pdf

2022-05-16

微信分享接口sdk(js)

分享接分享接口sdk

2020-05-02

jquery自动定位你的当前天气插件

jquery自动定位你的当前天气插件。 1,html文件包含weather.js文件: [removed][removed] 2,自动定位你的当前天气就显示在这个div中: <div id="tp-weather-widget" ></div>

2018-12-07

会计电算化斯诺

会计电算化斯诺软件,江西,福建等地方的考试专用软件

2014-06-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除