杨森源的博客

不要在最该奋斗的年纪选择安逸------一个热衷于PHP开发的95后

道格拉斯-普克算法(经纬度或坐标点抽稀)

起因 最近在做一个车联网项目,有一个场景是车辆定时上报当前所在经纬度等位置信息上报给平台,平台通过web页面在高德地图上展示车辆行驶路径。 由于车辆上报规则是每隔4s上报一次,一个小时也就是900个点,一天也就是21600个点,如果是10辆车就是216000个点,那如果是100辆车,甚至是1000...

2019-04-16 19:17:49

阅读数 143

评论数 0

【HTML】上传文件input样式美化

起因,最近因为一些原因,在写一个前端小页面,但是上传文件的样式怎么调整都不是很满意。遂转变思维想到了如下方法。 传统写法 <form id="upform" enctype='multipart/form-data'&a...

2018-04-19 11:09:11

阅读数 3722

评论数 2

【Yii】自动加载机制和别名

自动加载 什么是类的自动加载,详见PHP官方文档 http://php.net/manual/zh/language.oop5.autoload.php YII自动加载 Yii的类自动加载,依赖于PHP的 spl_autoload_register() , 注册一个自己的自动加载函数(a...

2018-02-23 16:44:53

阅读数 477

评论数 4

【Swoole】PHP+Swoole的闭包写法

JS程序员总是嘲笑PHP没有闭包,今天抽空写一篇文章来专门介绍一下PHP的闭包。从5.3版本开始PHP就增加了匿名函数支持,经过数个版本迭代到现在的PHP5.6、PHP7,PHP语言的闭包已经非常完善了。再结合Swoole提供的事件驱动支持,PHP的闭包功能非常强大而且很优雅。匿名函数匿名函数是闭...

2017-10-24 22:30:59

阅读数 740

评论数 2

【Swoole】多进程process

多进程初试用Swoole内置的函数写多进程是一件非常苦逼的事情啊,进程间的通信,异步回调(callback)做的都不是很好。还好有Swoole,拯救了PHP在这方面的薄弱,真是让PHP如虎添翼啊。Swoole,适合中高级程序员,不适合初级程序员,编写者也是冲着这么一个思想来的,他们认为你已经有了调...

2017-10-23 22:44:36

阅读数 3071

评论数 2

【Swoole】用swoole简单实现MySQL连接池

MySQL连接池在传统的网站开发中,比如LNMP模式,由Nginx的master进程接收请求然后分给多个worker进程,每个worker进程再链接php-fpm的master进程,php-fpm再根据当前情况去调用其worker进程然后处理PHP,如果需要MySQL,在与MySQL建立连接,这个...

2017-10-21 17:24:00

阅读数 9645

评论数 5

【WEB】Web性能压力测试工具

webbench原理webbench首先fork出多个子进程,每个子进程都循环做web访问测试。子进程把访问的结果通过pipe告诉父进程,父进程做最终的统计结果(转至百度百科)安装[root@VM_114_93_centos local]# wget http://home.tiscali.cz...

2017-10-20 20:35:41

阅读数 1161

评论数 1

【算法】拼凑面额+数字和为sum的方法数+走网格 (动态规划)

题目描述 给你六种面额1、5、10、20、50、100元的纸币,假设每种币值的数量都足够多,编写程序求组成N员(N为0-10000的非负整数)的不同组合的个数。 输入描述: 输入为一个数字N,即需要拼凑的面额 输出描述: 输出也是一个数字,为组成N的组合个数。 示例1 输入5 输出...

2017-09-11 23:11:39

阅读数 1812

评论数 1

【PHP】字符串加法运算(大数加法)

请设计一个算法能够完成两个用字符串存储的整数进行相加操作,对非法的输入则返回error输入描述: 输入为一行,包含两个字符串,字符串的长度在[1,100]。 输出描述: 输出为一行。合法情况输出相加结果,非法情况输出error 示例1 输入123 123 abd 123 输出246 ...

2017-09-10 23:04:59

阅读数 2379

评论数 2

【PHP】十进制转任意2-16进制

题目描述 给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数 输入描述:输入为一行,M(32位整数)、N(2 ≤ N ≤ 16),以空格隔开。输出描述:为每个测试实例输出转换后的数,每个输出占一行。如果N大于9,则对应的数字规则参考16进制(比如,10用A表示,等等)示例1...

2017-09-10 17:54:38

阅读数 1135

评论数 0

【PHP】从数列1,2,3.......n 中随意取几个数,使其和等于m(一段神奇的代码)

链接:https://www.nowcoder.com/questionTerminal/11cc498832db489786f8a03c3b67d02c 来源:牛客网输入两个整数 n 和 m,从数列1,2,3…….n 中随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来 输入描述...

2017-09-09 13:56:03

阅读数 1517

评论数 0

【PHP】算法基础-字符移位

小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。你能帮帮小Q吗?输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.对于每组数据,输出移位后的字符串。输入AkleBiCeilD输出kleieil...

2017-09-09 12:48:59

阅读数 891

评论数 0

【PHP】 买苹果

小易去附近的商店买苹果,奸诈的商贩使用了捆绑交易,只提供6个每袋和8个每袋的包装(包装不可拆分)。 可是小易现在只想购买恰好n个苹果,小易想购买尽量少的袋数方便携带。如果不能购买恰好n个苹果,小易将不会购买。 开始看到这个题,感觉挺有意思,但猛地一想,有点难度没有头绪,不搞完不睡觉。。<?p...

2017-09-09 12:42:47

阅读数 819

评论数 0

【PHP】求最大奇约数的和

小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11.现在给出一个N,需要求出 f(1) + f(2) + f(3)…….f(N)例如: N = 7f(1) + f(2) + f(3) +...

2017-09-09 12:35:36

阅读数 1037

评论数 0

【PHP】调整数组顺序使奇数位于偶数前(闭包扩展)

这道题意思就是,给所有奇数放到偶数前面,我们可以设置两个指针,一个从前往后,直到他扫到偶数,一个从后往前,直到他扫到奇数,然后交换两个数的位置,然后往下扫,当begin>end的时候停止。代码实现很简单,如下:<?php //调整数组,使奇数位于偶数前面function reorder...

2017-08-30 09:44:58

阅读数 1275

评论数 0

【MySQL】count使用姿势

数据表描述mysql> select vip,port,status from vip_full limit 10; +----------------+------+--------+ | vip | port | status | +----------------...

2017-08-19 16:08:43

阅读数 929

评论数 1

【MySQL】记一次数据去重

有时候,因为开发时,考虑不当,会造成数据重复。背景:前几天做项目的时候,有一个给ip打标签的操作,但是当数据数量多了以后,发现,同一个ip被打了两次相同的标签,导致数据显示重复,然而,已经使用了一段时间了,只能在原有数据库上删除重复数据,然后修改添加标签的逻辑了,去重操作如下:mysql> ...

2017-08-19 15:57:00

阅读数 878

评论数 0

【Linux】Linux中借助lockf机制,保证只有一个任务进程在执行

文件锁机制的作用:防止多个程序同时对一个不允许同时操作的工作做操作。实现(lockf) 在Linux中我们可以借助lockf命令来实现文件锁机制 安装tar -xzf lockf_linux.tar.gz cd lockf_linux make && make instal...

2017-08-19 15:33:30

阅读数 3786

评论数 1

【PHP】如何判断一个URL是否是一个图片链接

方式一直接正则匹配URL链接,是否是以.png,.gif,.jpg,.jpeg结尾的。preg_match('/.*(\.png|\.jpg|\.jpeg|\.gif)$/', $url);这个是一个最简单的方式,但是不够精确,因为并不是所有的图片链接都是以图片名字+扩展名结尾的。方式二用CURL...

2017-07-30 15:06:06

阅读数 6112

评论数 0

【mongodb】日常开发须知(基础版)

以下为个人在公司中所了解的mongodb开发基础,不具有权威性,仅供参考 库1.库名全部小写,禁止使用任何_以外的特殊字符,禁止使用数字打头的库名,如:123_abc解释:库以文件夹的形式存在,使用特殊字符或其它不规范的命名方式会导致命名混乱。2.数据库名最多为64字符。3.在创建新的库前应尽量评...

2017-07-29 17:52:54

阅读数 1266

评论数 0

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