php
kankan231
这个作者很懒,什么都没留下…
展开
-
php-fpm安装,启动,重启
php-fpm安装,启动,重启转载 2022-11-22 23:32:28 · 3009 阅读 · 1 评论 -
workerman,swoole,golang并发性能测试
workerman,swoole,golang并发性能测试原创 2022-11-13 23:24:58 · 1089 阅读 · 0 评论 -
php中self和static在方法中的区别
php中self和static在方法中的区别原创 2022-06-30 11:34:30 · 122 阅读 · 0 评论 -
PHP小知识记录
三目运算$a ? $a : $b 等价于 $a ?: $b$a ?? $b 等价于 isset($a) ? $a : $b数组解构$str = "james:29";[$name,$age] = explode(':',$str);相当于list($name,$age) = explode(':',$str)可以交换两个变量的值:[$a,$b] = [$b,$a]原创 2022-02-17 23:06:32 · 546 阅读 · 0 评论 -
laravel中 使用分隔符从一个字段中读取多个关联
在数据库设计中,常常会有用到以逗号隔开存储信息的场景在我们的业务场景中,就会设计到很多 比如针对订单或者用户的标签记录,用户和标签一对多的关系 如果使用单表来维护标签关系 而实际业务场景不是特别复杂的时候,这样做显得有点多余,这时候经常会采用一个字段以特殊字符隔开记录标签或其他信息;在laravel框架里,这个场景下,数据的回显如果采用join或者一对多关联的写法,并不适应数据的查询和回显及数据排重,如果有针对单字段,以特殊字符隔开的特殊关联就好了下面我们给出针对单字段,根据特殊分隔字符,加载关转载 2022-02-17 22:47:14 · 631 阅读 · 0 评论 -
php-fpm,workerman,swoole,golang简单性能测试
php-fpm,workerman,swoole,golang简单性能测试原创 2021-11-27 14:11:15 · 1400 阅读 · 1 评论 -
PHP反射实现框架中的依赖注入
在使用tp或者lavarel等框架会看到依赖注入等技术,其实是利用的PHP的反射机制动态创建对象实例实现的,下面来模拟一下,代码如下:/**** 工具类,使用该类来实现自动依赖注入。**/class Ioc { // 获得类的对象实例 public static function getInstance($className) { $paramArr = self::getMethodParams($className);原创 2021-11-13 16:37:59 · 157 阅读 · 0 评论 -
vscode调试php配置Xdebug
发现一篇vscode配置xdebug调试php的文章,写的比较详细,这里转载需要原文作者同意,所以留个链接,方便以后有需要查看。原文链接:https://www.cnblogs.com/phonecom/p/10340038.html原创 2021-06-28 20:55:42 · 123 阅读 · 3 评论 -
php+nginx+redis安装
php+nginx+redis机器扩展安装原创 2015-07-28 17:56:14 · 671 阅读 · 0 评论 -
xss攻击
xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制。xss攻击可以分成两种类型:非持久型攻击持久型攻击下面我们通过具体例子,了解两种类型xss攻击。 1.非持久型xss攻击顾转载 2015-06-24 11:04:12 · 848 阅读 · 0 评论 -
php使用socket获取远程图片
步骤:1,匹配URL中的主机名和文件部分2,创建socket并连接到目标服务器3,原创 2014-08-01 20:33:40 · 1690 阅读 · 0 评论 -
php的header函数之设置content-type
设置常用的content-type://定义编码header( 'Content-Type:text/html;charset=utf-8 ');//Atomheader('Content-type: application/atom+xml');//CSSheader('Content-type: text/css');//Javascriptheader('Conten转载 2014-07-18 14:37:54 · 56721 阅读 · 0 评论 -
推荐一份PHP程序员笔试题(附答案)
简述题(50分)1.用php打印出前一天的时间格式是2006-5-10 22:21:21(2分)echo date("Y-m-d G:i:s",strtotime("-1 day"));2.echo(),print(),print_r()的区别(3分)echo()是一个php语句,所以没有返回值,能打印简单的数据。print()是一个函数,有返回值,能打印简单的转载 2014-02-24 22:43:05 · 5183 阅读 · 0 评论 -
系统优化方法
1,将业务按子域名分部部署到不同的服务器上2,使用反向代理,http服务器负载均衡3,使用memcache或redis等存储session数据,实现多服务器贡献3,程序中大量使用redis缓存加快响应,redis还可做队列,锁等4,MySQL使用读写分离,分库分表,定时转移旧数据,加合适的索引,设计表时适当冗余,尽量避免连表查询5,使用CDN缓存css,js,图片等静态资源原创 2016-05-19 14:52:49 · 584 阅读 · 0 评论 -
在Ubuntu中使用源码编译安装Apache+MySQL+PHP+phpMyAdmin
原文链接:http://www.icultivator.com/p/7079.html操作系统:ubuntu12.04LTS(64位)编译安装的步骤如下:检查安装的编译工具编译过程中需要C的编译器,C++的编译器,make,和编译mysql最新版本时需要的cmake。检查编译器软件是否安装的命令是:dpkg –l | grep filename转载 2014-02-24 22:29:18 · 5028 阅读 · 1 评论 -
php加密与解密
php中的常用加密方法原创 2015-07-31 13:31:50 · 767 阅读 · 0 评论 -
php命名空间
php命名空间命名空间的定义必须在php文件的第一行,之前不能有任何输出,多个文件中可定义同一个命名空间,但在同一个命名空间中不能有相同的类或函数定义命名空间:namespace n1\n2;通常来说,命名空间的名字根据文件所在的路径来取,但这并不是必须的,根据路径来取名字是一种好的规范在使用某个命名空间里的类,函数时,首先要包含这个命名空间所在的文件,然后根据规则使用之,原创 2015-03-27 12:44:45 · 704 阅读 · 0 评论 -
PHP解决并发问题的几种实现
对于商品抢购等并发场景下,可能会出现超卖的现象,这时就需要解决并发所带来的这些问题了在PHP语言中并没有原生的提供并发的解决方案,因此就需要借助其他方式来实现并发控制。方案一:使用文件锁排它锁flock函数用于获取文件的锁,这个锁同时只能被一个线程获取到,其它没有获取到锁的线程要么阻塞,要么获取失败在获取到锁的时候,先查询库存,如果库存大于0,则进行下订单操作,减库存,然后释放锁原创 2016-04-10 00:24:45 · 21146 阅读 · 0 评论 -
centos配置https(nginx,apache)
1,生成公私钥,证书文件公私钥和证书都可以自己生成,也可以让CA机构来生成。自己生成的证书是不受浏览器信任的,浏览器会弹出警告。如果要让CA机构来生成证书,需要提交网站的域名,公司的信息。以及你网站的公钥等信息,如果你是自己生成的公私钥的话。也有一些免费的CA证书,比如沃通就提供免费的CA证书,只需要提交域名以及认证域名。CA机构会给你一个签名文件,把这个签名文件和私钥文件放在网站原创 2016-09-04 17:55:46 · 846 阅读 · 1 评论 -
php7新特性
PHP72015.12.3 发生了两件大事, PHP7 问世了, Swift 开源了。最好的语言发布了新的版本,一个划时代的大版本: PHP7 。PHP7 修复了大量 BUG ,新增了功能和语法糖。这些改动涉及到了核心包、 GD库、 PDO 、 ZIP 、 ZLIB 等熟悉和不熟悉的核心功能与扩展包。PHP7 移除了已经被废弃的函数,如 mysql_ 系列函数在 P转载 2016-10-09 10:15:14 · 725 阅读 · 0 评论 -
关于htmlentities 、htmlspecialchars、addslashes,strip_tags的使用
1、html_entity_decode():把html实体转换为字符。Eg:$str = "just atest & 'learn to use '";echo html_entity_decode($str);echo "";echo html_entity_decode($str,ENT_QUOTES);echo "";转载 2016-11-15 15:53:00 · 1260 阅读 · 0 评论 -
PHP在linux上执行外部命令
目录:一、PHP中调用外部命令介绍二、关于安全问题三、关于超时问题四、关于PHP运行linux环境中命令出现的问题一、PHP中调用外部命令介绍在PHP中调用外部命令,可以用,1>调用专门函数、2>反引号、3>popen()函数打开进程,三种方法来实现: 方法一:用PHP提供的专门函数(四个):PHP提供4个专门的执行外部命令的函数:exec(), sys转载 2016-12-14 09:23:35 · 461 阅读 · 0 评论 -
php利用socket函数模拟发送http请求
<?php/** Network: HTTP request object* Author: Li HouYu (Karajan Lee), Shanghai, China.*/class HttpRequest{ private $sHostAdd;//服务器ip private $sUri;//请求的文件 private $iPort;//服务器端口原创 2013-01-16 20:17:14 · 6947 阅读 · 0 评论 -
php之include,require文件包含
在php中,我们可以使用include和require两类函数来包含一个文件,include和require在功能上完全相同,只是在出现错误时的处理方式不同,如果包含时出现错误,如被包含的文件不存在,include会产生一个警告,程序继续往下执行,而require则会产生一个严重的错误,终止程序的执行。由于include和require是一种语言结构,而不是函数,在使用时不需要括号,这样使用既可:原创 2014-02-08 16:31:35 · 870 阅读 · 0 评论 -
两个实用的函数
1,时间转化函数,将一个时间戳转化为n分钟前,n小时前...function time_convert($time){ $past_time = time() - $time; $str = ''; if( 0<=$past_time && $past_time<60 ) { $str = '刚刚'; }else if(60<=$past_time && $past_time<原创 2014-02-08 14:50:31 · 658 阅读 · 0 评论 -
Apache错误页面404、403配置教程
原文:http://www.leapsoul.cn/?p=591在PHP网站开发中,在用户访问网站出错、找不到页面时,会出现HTTP 404,403错误信息,为了提高用户体验,我们需要自定义404、403错误页面,提示用户下一步操作或自动跳转至合适的访问页面。 自定义错误页面404、403的方法,主要通过apache或者htaccess进行配置,htaccess配置错误页面的转载 2013-03-06 22:19:10 · 6948 阅读 · 0 评论 -
PHP环境搭建:Windows 7下安装配置PHP+Apache+Mysql环境教程
原文:http://www.leapsoul.cn/?p=695这两天刚装好Windows 7,碰巧前段时间有朋友问我Windows下如何安装搭建PHP环境,所以打算勤劳下,手动一步步搭建PHP环境,暂且不使用PHP环境搭建软件了,在此详细图解在Windows 7下安装配置PHP+Apache+Mysql环境的教程,希望对PHP初学者有所帮助。 在Windows 7下进行PH转载 2013-03-06 22:45:12 · 742 阅读 · 0 评论 -
Apache Mod_Rewrite实现URL重写的配置方法
原文:http://www.leapsoul.cn/?p=25配置步骤: 第一步:找到apache的配置文件httpd.conf(文件在conf目录下) 第二步:你首先必须得让服务器支持mod_rewrite,如果你使用的是虚拟主机,请事先询问你的主机提供商。 打开httpd.conf,找到 #LoadModule rewrite_module转载 2013-03-06 22:17:18 · 789 阅读 · 0 评论 -
常用的网站提速技术(面试的时候用来吹)
针对访问量大的网站,有以下优化技术:1,页面静态化2,内存缓存(memcached)3,数据库优化(表优化,配置优化),服务器配置优化,程序优化4,加大带宽5,升级服务器6,服务器集群,负载均衡技术......原创 2013-03-05 23:02:15 · 684 阅读 · 0 评论 -
php学习笔记之页面静态化
动态页面能实时的更新页面内容,但是因为动态页面要执行脚本,操作数据库,所以访问速度现对于静态页面更慢一点,当网站访问量较大时,尤其是新闻类更新频繁访问量大的站点,如果每个页面都要去连接数据库,取数据,会给web服务器和数据库服务器带来很大的压力,甚至导致网站瘫痪。页面静态化技术能极大的提高页面的访问速度,因为不用执行很多的动态脚本,也不用不进行耗时的数据库操作。服务器直接返回用户所需要的内容就可以原创 2013-03-05 22:13:39 · 1092 阅读 · 0 评论 -
命令行方式运行php脚本
可执行文件 所有的PHP发行版,不论是编译自源代码的版本还是预创建的版本,都在默认情况下带有一个PHP可执行文件。这个可执行文件可以被用来运行命令行的PHP程序。 要在你的系统上找到这个可执行文件,就要遵照下面的步骤: 在Windows操作系统里,它被放在PHP主安装目录下,文件名是php.exe或者(在老版本的PHP里)是php-cli.exe。转载 2013-01-03 15:26:26 · 861 阅读 · 0 评论 -
php之无限极分类
首先建立分类信息表:CREATE TABLE IF NOT EXISTS `category` ( `categoryId` smallint(5) unsigned NOT NULL AUTO_INCREMENT, `parentId` smallint(5) unsigned NOT NULL DEFAULT '0', `categoryName` varchar(50) NO原创 2013-01-03 21:47:17 · 10720 阅读 · 1 评论 -
没事写了两个函数,php中gbk和utf-8中文无乱码截取
一,gbk/gb2312中文截取在gbk/gb2312编码中一个中文占两个字节,一个ascii字符占一个字节,函数如下://gbk,gb2312字符串截取函数function gbk_substr($str,$len){ if($len<=0) return ''; $chars=0; $bytes=0; $str_bytes=strlen($str); for($i=0;原创 2012-12-30 21:07:38 · 708 阅读 · 0 评论 -
smarty3.0中文手册文档API及使用指南
转自http://xingyunbaijunwei.blog.163.com/blog/static/765380672011102691629382/1、安装Smarty3.0一、什么是smarty?smarty是一个使用PHP写出来的模板PHP模板引擎,它提供了逻辑与外在内容的分离,简单的讲, 目的就是要使用PHP程序员同美工分离,使用的程序员改变程序的逻辑内容不会转载 2012-11-12 16:32:03 · 2527 阅读 · 0 评论 -
php将session信息写入数据库
本文转自http://www.cnblogs.com/zjfazc/archive/2012/09/06/2673803.htmlphp默认使用文件来保存session数据,我们可以定义自己的session处理器来将session信息保存到数据库或其他地方下面是php.ini中session的配置说明: session.save_handler = "files"转载 2012-11-10 01:14:05 · 3541 阅读 · 3 评论 -
PHP JSON格式数据交互实例详解
原文:http://www.leapsoul.cn/?p=1072此前我写了不少在PHP网站开发中应用XML进行数据交互的实例,这两天通过PHP解析JSON并进行交互的实例学习和了解了JSON在PHP中的应用,感觉非常方便,在PHP中解析JSON主要用到json_encode和json_decode两个PHP JSON函数,比PHP解析XML方便很多,下面详细介绍下PHP JSON转载 2013-03-06 22:35:31 · 1060 阅读 · 0 评论 -
使用apache自带的压力测试工具进行网站压力测试
apache有一个自带的压力测试工具ab.exe,在apache安装目录下的bin目录中,使用该工具可以模拟多个用户并发访问网站。下面具体介绍如何使用。1,首先从命令行中进入ab.exe所在的目录(即apache的bin目录)2,输入:ab.exe -n 访问次数 -c 并发数 请求的url其中访问次数表示模拟访问的总次数,并发数表示每次发出的请求数,请求的url就是测试的某个网站页面原创 2013-03-07 16:49:09 · 871 阅读 · 0 评论 -
通过telnet连接查看memcache服务器
memcache作为一款优秀的进程外缓存,常常被运用于高并发系统架构中。这里主要谈谈怎么通过telnet工具,查看memcache运行状况并对其key进行管理维护。假设memcache安装目录:/usr/local/memcached 1、启动memcache[plain] view plaincopy[root转载 2014-01-22 10:56:52 · 7117 阅读 · 1 评论 -
php迭代器的执行过程
要使用迭代器就要先实现Iterator接口,该接口有以下五个方法:Iterator::current — 返回当前元素Iterator::key — 返回当前元素的键Iterator::next — 向前移动到下一个元素Iterator::rewind — 返回到迭代器的第一个元素Iterator::valid — 检查当前位置是否有效实现该接口的类必须实现这五个方原创 2013-04-29 22:40:07 · 619 阅读 · 0 评论 -
php配置文件详解
;**************以下这部分是php.ini-recommended中的内容******************;**********************************************************************************************;[php 5.0.4 php.ini-recommended];;;;;转载 2013-04-25 21:26:52 · 693 阅读 · 0 评论