php码农技术分享
文章平均质量分 71
分享自己在项目中或学习里所用知识,互相交流
coderForPhp
一花一世界,一码一人生,谓之程序人生
展开
-
90个PHP常用接口数据过滤的方法
最近工作有点忙,更新慢了 90个PHP常用接口数据过滤的方法<?php/** * global.func.php 公共函数库 *//** * 返回经addslashes处理过的字符串或数组 * @param $string 需要处理的字符串或数组 * @return mixed */function new_addslashes($string){ if(!is_arra原创 2017-09-05 16:10:53 · 2114 阅读 · 0 评论 -
PHP-设计模式-依赖注入
前言 终于要讲到这个著名的设计原则,其实它比其他设计模式都简单。 依赖注入的实质就是把一个类不可能更换的部分 和 可更换的部分 分离开来,通过注入的方式来使用,从而达到解耦的目的。这里就举个数据库链接的栗子,希望大家理解一个数据库连接类class Mysql{ private $host; private $port; private $username;原创 2017-06-14 09:46:41 · 496 阅读 · 0 评论 -
PHP 设计模式---原型模式
通过先创建一个原型对象,然后直接克隆,省去了new大对象带来的开销浪费。当然我们同样可以通过,封装clone这个动作。使得我们在clone的同时还可以做一些其他的准备工作。原创 2017-06-05 20:11:14 · 362 阅读 · 0 评论 -
PHP设计模式---工厂模式
工厂模式(Factor Pattern),就是负责生成其他对象的类或方法,也叫工厂方法模式实现:定义一个用于创建对象的接口,让子类决定实例化哪一个类。 应用场景:众多子类并且会扩充、创建方法比较复杂。为什么需要工厂模式1,工厂模式可以将对象的生产从直接new 一个对象,改成通过调用一个工厂方法生产。这样的封装,代码若需修改new的对象时,不需修改多处new语句,只需更改生产对象方法。2,若所需实例原创 2017-06-03 14:26:11 · 547 阅读 · 0 评论 -
PHP 设计模式---单例模式
单例模式(Singleton Pattern):顾名思义,就是只有一个实例。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式也细分为懒汉模式和饿汉模式,感兴趣的朋友可以去了解一下。这里阐述的代码实现是懒汉模式(一)为什么要使用PHP单例模式1,开发中有些时候,一个应用中会存在大量的数据库操作。原创 2017-06-02 17:15:57 · 770 阅读 · 0 评论 -
PHP 常用字符串相关函数
字符串的概念:一个字符串string就是由一系列的字符组成,其中每个字符等同于一个字节。这意味着 PHP 只能支持 256 的字符集,因此不支持 Unicode 。String最大可以达到2G;语法:单引号/双引号/heredoc/newdoc 抛开效率问题这些都一样字符串输出:echo():输出一个或多个字符串print():输出一个字符串printf():输出格式化字符串 ///原创 2017-05-29 10:07:34 · 475 阅读 · 0 评论 -
Laravel 图片七牛上传
注册七牛云账号打开七牛云注册账号并实名认证,认证成功后就可以查看自己的私钥了 安装jdk扩展确认本机安装Composer,如果没有请百度自行安装Composer。在控制台输入composer require qiniu/php-sdk 等待安装提示成功 // 引入鉴权类 use Qiniu\Auth; // 引入上传类 use Qiniu\Storage\UploadMan原创 2017-05-26 20:34:30 · 1268 阅读 · 0 评论 -
PHP 面向对象
http://www.runoob.com/php/php-oop.html转载 2017-05-23 12:13:50 · 319 阅读 · 0 评论 -
PHP traits (复用机制)
最近在学习Laravel中,遇到了很多关于Traits ,查了下资料,分享下。提到 php 的代码复用,我们可能第一时间会想到继承,但是这种单继承语言一旦派生的子类过多,那么会产生一系列的问题,比如依赖父类、耦合性太大、破坏了类的封装性。那么有没有更好的方法来实现代码复用呢?自 PHP 5.4.0 起,PHP 实现了另外一种代码复用的一个方法,称为 traits。Traits 是一种为类似 PHP原创 2017-05-26 14:36:38 · 1029 阅读 · 0 评论 -
PHP RSA2 签名算法
博主在项目中遇到PHP签名算法,找了很多资料,现在总结下。RSA2是在原来SHA1WithRSA签名算法的基础上,新增了支持SHA256WithRSA的签名算法。该算法在摘要算法上比SHA1WithRSA有更强的安全能力。SHA1WithRSA的签名算法会继续提供支持,但为了您的应用安全,强烈建议使用SHA256WithRSA的签名算法。RSA类<?php/** * Created by Php原创 2017-05-13 09:07:08 · 10177 阅读 · 1 评论 -
PHP发邮件方式
1、使用php内置的mail()函数。这是php内置的函数,看文档感觉此函数用起来十分简单。确实,用起来非常简单,但是要用此函数,需要在本机配置一个sendmail服务器,这么看来,就不是那么简单了。 mail()函数用法:<?php// The message$message = "Line 1\nLine 2\nLine 3";// In case any of our lines are原创 2017-05-22 13:33:01 · 603 阅读 · 0 评论 -
PHP 推荐排序
本文说的排序并不是指「冒泡」之类的技术概念,而是一个业务相关的问题。举例来说:某个网站,每天都能产生很多数据,需要一个推荐列表页面来展示数据。最初是完全按照时间倒序来排序的,但是这样就产生了一个问题:新鲜的数据不一定是有价值的数据!假设某个时段灌水的数据比较多,那么用户当时在列表页看到的就都是灌水的内容。既然如此,不妨换个思路:给每个数据投票,投票规则可以按业务逻辑自定义,比如:每次评论加一票,每原创 2017-05-22 20:08:15 · 733 阅读 · 0 评论 -
InnoDB 事务隔离级别(Mysql篇)
MySQL InnoDB四个事务级别 与 脏读、不重复读、幻读原创 2017-05-07 21:47:03 · 2854 阅读 · 0 评论 -
php 操作 redis 常用方法代码例子
这篇文章主要介绍了30个php操作redis常用方法代码例子,本文其实不止30个方法,可以操作string类型、list类型和set类型的数据,需要的朋友可以参考下redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了。查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子。下面的例子都是基于php-redis这个扩展的。1,connect描述:实例连接到一个Red原创 2017-05-02 16:15:45 · 368 阅读 · 0 评论 -
PHP 性能分析魔法方法
曾经记得鸟哥Laruence提过不建议使用”魔术方法”,自此之后一旦涉及使用魔术方法的地方,博主都会下意识的想一下,这样写真的好吗?由于这一到两年来一直忙于工作和学习新的知识,所以在这道坎儿上一直没有做深入的探索一直恍恍惚惚过去了,今年是博主进行深入学习的一年,因此现在必须对这个问题做个了结了。我们先来看看鸟哥Laruence博客曾经提到的:优化的建议, 是建议, 是防止大家滥用, 肆无忌惮的用.原创 2017-05-04 08:57:56 · 410 阅读 · 0 评论 -
Redis 字符串(String)
欢迎大家关注我的Github博客Redis 字符串数据类型的相关命令用于管理 redis 字符串值,基本语法如下:语法redis 127.0.0.1:6379> COMMAND KEY_NAME实例redis 127.0.0.1:6379> SET runoobkey redisOKredis 127.0.0.1:6379> GET runoobkey"redis"在以上实例中我们使用了原创 2017-04-26 20:30:28 · 767 阅读 · 0 评论 -
PHP 冒泡排序
欢迎大家关注我的Github博客博主最近在项目开发中自我感觉脑袋反应比较迟钝,下班回来复习下排序算法。今天讲的是冒泡排序!<?php/** * php算法实战 * * 排序算法-冒泡排序 * * @author ff */ /** * 优化冒泡排序 * * @param array $value 待排序数组 * @return array $value原创 2017-04-26 20:16:43 · 302 阅读 · 0 评论 -
Redis 配置篇
欢迎大家关注我的其他Github博客和简书,互相交流!Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf。 你可以通过 CONFIG 命令查看或设置配置项。 语法 Redis CONFIG 命令格式如下:redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME实例redis 127.0.0.1:6379> CON原创 2017-04-19 17:09:08 · 335 阅读 · 0 评论 -
Redis 命令与键(key)
Redis 命令用于在 redis 服务上执行操作。要在 redis 服务上执行命令需要一个 redis 客户端。Redis 客户端在我们之前下载的的 redis 的安装包中。 语法 Redis 客户端的基本语法为:$ redis-cli实例 以下实例讲解了如何启动 redis 客户端: 启动 redis 客户端,打开终端并输入命令 redis-cli。该命令会连接本地的 redis 服务原创 2017-04-22 21:23:54 · 484 阅读 · 0 评论 -
Redis 数据结构
博主只是想和大家分享自己Redis学习的心得 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。String(字符串)string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。 string类型是二进制安全的。意思是redis的string可原创 2017-04-25 20:58:06 · 899 阅读 · 0 评论 -
Redis详细解说
欢迎大家关注我的其他Github博客和简书,互相交流!1. Redis 简介•Redis是一款开源的、高性能的键-值存储(key-value store)。它常被称作是一款数据结构服务器(data structure server)。Redis的键值可以包括字符串(strings)类型,同时它还包括哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等数原创 2017-04-07 17:33:29 · 969 阅读 · 0 评论 -
Redis实现高并发下的抢购、秒杀功能
欢迎大家关注我的其他Github博客和简书,互相交流! 博主最近在项目中遇到了抢购问题!现在分享下。 抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个: 1 高并发对数据库产生的压力 2 竞争状态下如何解决库存的正确减少(”超卖”问题) 对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。 重点在于第二个问题原创 2017-04-07 17:44:55 · 6595 阅读 · 0 评论 -
PHP 常用资源
PHP 常用资源常用资源常用扩展phpDocumentor PHPUnit Guzzle好文PHP之道 Cookie/Session机制详解判断是否为空+--------------+-----------+---------+-----------+---------+--------+| 真值表 | gettype() | empty() | is_null() | iss原创 2017-03-28 11:06:48 · 720 阅读 · 0 评论 -
Git 常用资源
欢迎大家关注我的其他Github博客和简书,互相交流! 之前博主发布过一篇关于Git快速入门篇http://blog.csdn.net/u014377963/article/details/56276429现在补充一下库管理克隆库git clone https://github.com/php/php-src.gitgit clone --depth=1 https://github.co原创 2017-03-28 11:29:58 · 660 阅读 · 0 评论 -
PHP判断手机端、PC端 、微信代码实例
欢迎大家关注我的其他Github博客和简书,互相交流!在这里博主为大家分享了PHP判断的两个实例,一是PHP判断是手机端还是PC端,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下 1、判断是否是手机端function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HTTP_X_WAP_PROF原创 2017-03-16 20:19:45 · 1702 阅读 · 0 评论 -
Laravel-EloquentORM 进阶部分
欢迎大家关注我的其他Github博客和简书,互相交流! 下午时间学习了Laravel中的ORM进阶部分,与大家分享下。关联关系One To One 假设User模型关联了Phone模型,要定义这样一个关联,需要在User模型中定义一个phone方法,该方法返回一个hasOne方法定义的关联<?phpnamespace App;use Illuminate\Database\Eloquent原创 2017-03-13 18:54:38 · 740 阅读 · 0 评论 -
Laravel-EloquentORM 基础
欢迎大家关注我的其他Github博客和简书,互相交流! 今天学习了Laravel中的ORM基础部分,现在分享一下。Eloquent ['eləkwənt] 时,数据库查询构造器的方法对模型类也是也用的,使用上只是省略了DB::table(‘表名’)部分。在模型中使用protected成员变量$table指定绑定的表名。<?phpnamespace App;use Illuminate\Dat原创 2017-03-13 13:56:33 · 1028 阅读 · 0 评论 -
Laravel学习篇-数据库操作和查询构造器
最近小编在学习号称世界最牛框架–Laravel。其实学习框架也就是学习框架的思想! 我想在我的博客中记录我在laravel学习中的一些心得,欢迎大家关注我的其他Github博客和简书,互相交流! 版本:Laravel 5.2 数据库:mysql 5.6 php:php7.1数据库操作和查询构造器在Laravel中执行数据库操作有两种方式,一种是使用\DB外观对象的静态方法直接原创 2017-03-12 11:20:29 · 1662 阅读 · 0 评论 -
Laravel Dusk 浏览器测试更优雅
欢迎大家关注我的其他<a href ="https://webff.github.io" >Github博客</a>和<a href ="http://www.jianshu.com/u/a9f9d36ab057">简书</a>,互相交流!原创 2017-03-08 20:49:27 · 2172 阅读 · 0 评论 -
Ajax Jsonp 跨域实例
欢迎大家关注我的其他Github博客和简书,互相交流!1.什么是jsonp:JSONP(JSON with Padding)是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。2.JSONP有什么用?由于同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、原创 2017-03-11 16:07:48 · 462 阅读 · 0 评论 -
Ajax Access-Control-Allow-Origin实现跨域访问用法
欢迎大家关注我的其他Github博客和简书,互相交流!如果跨域使用POST方式,可以使用创建一个隐藏的iframe来实现,与ajax上传图片原理一样,但这样会比较麻烦。 所以通过设置Access-Control-Allow-Origin来实现跨域访问比较简单。 下面看下我的demo,我的地址是www.text.com(配置虚拟主机)。例如:客户端的域名是www.text.com,而请求的域名是原创 2017-03-11 17:03:39 · 833 阅读 · 0 评论 -
Centos7 Lamp环境搭建
由于自己容易忘记,特写一篇博客记录Lamp环境搭建。互相交流! 欢迎大家关注我的其他Github博客和简书,互相交流!本机环境:服务器是腾讯云;使用的镜像是:公共镜像 CENTOS 7.2一、nginx安装1.下载对应当前系统版本的nginx包(package)wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-c原创 2017-03-07 12:39:39 · 408 阅读 · 0 评论 -
php-fpm解释
约定几个目录/usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.ini一,php-fpm的启动参数#测试php-fpm配置/usr/local/php/sbin/php-fpm -t/usr/local/php/sbin/php-fpm -c /usr/local/php/etc转载 2017-03-06 20:31:50 · 456 阅读 · 0 评论 -
PHP读取XML文件的方法
本文实例总结了PHP读取XML格式文件的方法。分享给大家供大家参考,具体如下:books.xml文件:<books><book><author>Jack Herrington</author><title>PHP Hacks</title><publisher>O'Reilly</publisher></book><book><author>Jack Herrington</autho原创 2017-03-05 12:42:07 · 1346 阅读 · 0 评论 -
php 笔试题(一)
最近转载一些面试题,希望能给找工作的朋友们带来一点帮助。1.写出5个以上你所知道的常用的Linux命令和它的功能 cat,显示文件内容。 cd,改变目录路径。 cp,复制文件。 find,查找文件。 grep,搜索、过滤信息。 ls,列出目录信息。 more,分页显示。 rm,删除文件或目录。 vi,调用vi文本编辑器。 who,显示登录用户转载 2017-02-28 21:24:25 · 2580 阅读 · 0 评论 -
[php篇] 最全获取服务器操作系统信息基本命令
最进在项目后台开发中涉及到了显示当前服务器所在操作系统的一些基本信息。其中包含了:PHP版本、服务器操作系统等。比较多,现在总结了一些,分享给大家供大家参考,具体如下: PHP版本:<?PHP echo PHP_VERSION; ?>MYSQL支持: <?php echo function_exists (mysql_close)?"是":"否"; ?>MySQL数据库持续连接 :<?phpec原创 2017-02-25 13:40:52 · 1239 阅读 · 0 评论 -
Git篇--快速团队开发
本人是一所本科院校大三学生,在校有自己的学生团队,在项目开发中,为了提高开发效率,采用了Git技术。现总结下git,欢迎大家互相交流。在学习git之前,我们先来了解一下git的一些基本概念1.git工作流程见下图2.一些基本概念.git目录:使用git init初始化一个git仓库时会生成.git隐藏目录,里面存储的是整个项目的文件改变记录等信息。工作区:可以理解为本地的git仓库所在的目录也就原创 2017-02-21 09:47:04 · 1247 阅读 · 1 评论 -
php实现base64图片上传方式
php实现base64图片上传方式 版权声明:本文为博主原创文章,未经博主允许不得转载。本例子中没有采用File Post上传文件方式!原理一样,为了更加的理解base64 选择将其输出在文本域中,并提交至服务器!运用到项目中建议采用提交File方式。html代码<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht原创 2017-02-20 19:30:58 · 7126 阅读 · 1 评论 -
Windows下安装Jekyll
Windows下安装Jekyll(一个非常好的博客系统)本人大三,之前就有写博客的习惯,常在各大博客平台发表博客,但是还是不能慢慢的偏离了自己最初想写博客的初衷。 由于屌丝自己没有域名服务器,花费了30分钟在Windows安装了Jekyll!1.what jekyll是一个基于ruby的博客系统,Jekyll是一款静态网站生成工具,允许用户使用HTML、Markdown或Textil原创 2017-01-18 23:19:52 · 528 阅读 · 0 评论 -
PHP 缓冲区加速你的web站点
在当前 PHP 版本的默认配置下,“输出缓冲(Output Buffering)”是被打开的。旧版本则不是这样,在旧版本的 PHP 中,字符串在每次被输出的时候(通过 echo 或 print 函数),都会触发一次发送到客户端浏览器的动作。 “输出缓冲”的引入,使得这一过程更加快速、更加高效。缓冲区实际上是在内存中开辟了一块区域,可以认为是内存中的一个大的字符串。当程序中有字符要输出的时候,会把要原创 2017-02-23 13:37:39 · 432 阅读 · 0 评论