排序:
默认
按更新时间
按访问量

Mac 下编译 PHP 扩展遇到的一些问题

    MacOS 每次更新都会给编译 PHP 扩展带来一些麻烦,今天在安装 PCNTL 扩展的时候又遇上了,所以记录一下。    我的系统版本是 macOS High Sierra 10.13.3,PHP 版本是 PHP-7.1.7。    首先我从官网下载跟我系统版本相同的 PHP,默认下载到...

2018-02-09 15:52:19

阅读数:193

评论数:0

C语言模拟终端执行shell命令

程序只支持ls、cat和ps三个命令,思路是在用户输入一条命令之后fork一个新的进程,在新的进程里面执行命令。 在我理解中,Mac的终端思路应该是类似的。在打开终端之后,程序会读取配置文件中目录下可执行的命令,然后根据用户的命令判断命令是否存在,如果存在,则fork出一个新的进程执行,否则返回“...

2017-08-10 15:30:27

阅读数:611

评论数:0

hdu 3397 Sequence operation(线段树)

这道题当年在大学的时候就卡得我痛不欲生,我一直觉得自己思路是对的,我第一次提交是在2013-08-03 05:17:00,然后从凌晨五点开始做,当时一直做不对。我觉得我的思路没错啊。之后这道题一直是我的一个心病,后来有空就去看一眼,想想是哪儿错了,就刚才2017-03-03 17:14:23,...

2017-03-03 17:27:16

阅读数:165

评论数:1

Mac下配置jar包

今天想写一个jdbc的demo,代码写完之后一直提示ClassNotFoundException:com.mysql.jdbc.Driver的错误信息,我猜应该是没有安装扩展,在PHP中经常遇到这种问题。 我去下载了com.mysql.jdbc.Driver的驱动,但是不知道怎么安装进项目里,折...

2017-02-20 14:57:14

阅读数:2448

评论数:0

定时保存apache日志文件

之前在写代码的时候,发现apache的日志文件太大了,就想写个脚本定时备份apache日志文件。 需要注意,文件在备份之后,如果直接删除原日志文件,因为apache还是持有原文件的句柄,如果不重启apache,后面的日志将会写入不进去。解决方案是不删除原日志文件,而是清空里面的内容。 #!/b...

2017-02-17 16:36:16

阅读数:678

评论数:0

linux的一些常用命令

说起来是写PHP的,说起来是做服务端的程序员,说起来我是在mac上做开发,然而我对于linux命令完全不能算熟悉,基本上除了常用那些,大部分我都不了解。 这里做个记录,都是一些linux下非常常用的命令。 常用到什么程度呢?连我都知道…… cd  这个在windows下也是一样,切换目录ls ...

2017-02-16 15:37:13

阅读数:121

评论数:0

排序算法:希尔排序

这应该是最后一篇写排序算法的博客吧。 希尔排序:逐次分割序列,每次对其中一小段进行插入排序。在数组基本有序的情况下,插入排序可以有很好的效率,通过这种方式来提高排序效率。 思路上跟归并排序挺像的,都是分割成较小的子序列,对子序列排序,再逐渐扩大子序列的长度,直至子序列长度等于原序列本身。不同的...

2017-02-13 15:08:23

阅读数:164

评论数:0

排序算法:堆排序

之前想把经典的排序算法都写一遍,最后没有写堆排序和希尔排序,现在给补一下。 堆的概念:一个完全二叉树,只要任一节点都满足a[father]>=a[left_son]&&a[father]>=a[right_son],那么就称之为大顶堆,如...

2017-02-13 11:57:32

阅读数:153

评论数:0

PHP基础补全系列:SPL(数据结构)

SPL是PHP的标准库,无需安装,可以直接使用。 这两天在优化系统里的一些东西的时候,发现有可能需要使用一些数据结构来实现,自己用PHP写总是感觉蠢蠢哒,所以查一下PHP的库。这里并不打算去具体介绍细节和写demo,就是做一个备忘 SplDoublyLinkedList:双向链表SplStac...

2017-02-09 16:02:09

阅读数:614

评论数:0

使用PHP魔术方法实现属性的set、get方法

之前对PHP中的魔术方法一直有了解,但是对于具体的使用场景则是模模糊糊的。今天了解到了一种使用魔术方法的场景,整理了一下写出来。 假如一个类中具有较多的变量,对于每一个变量编写set/get方法是一件非常繁琐的事情,尤其对于数据库的查询结果,有时候字段可以很多。但是直接让程序调用类中的字段又不被推...

2017-02-08 15:25:34

阅读数:258

评论数:0

Codeforces Round #387 (Div. 2)

这段时间因为工作轻松一些,所以重新开始打codeforces了。 不过成绩挺让人心寒的。 A.水题,签到 #include #include int ab(int x,int y) { if(x-y>0) return x; else return y; } int m...

2016-12-26 17:51:37

阅读数:210

评论数:1

PHP基础补全系列:异常处理

异常处理在PHP里也是个很有争议的问题,记得之前做项目的时候,关于异常处理和当时的同事讨论了很久。         不过今天不讨论这些东西,只是单纯做个记录。         这篇博客分三个部分: 异常处理的基本使用扩展中抛出的异常,以PDO举例将错误信息委托给异常处理      ...

2016-12-06 18:20:52

阅读数:170

评论数:0

PHP基础补全系列:static

昨天晚上睡了大概两个小时。感觉今天一天整个人的状态都特别萎靡。         在手册中,static关键主要实现两个作用,1.定义静态变量和静态方法;2.实现后期静态绑定(延迟静态绑定)     定义静态变量和静态方法主要是需要注意声明和调用的方式。     1.手册中提到静态属性不能使用表达式...

2016-12-05 16:24:19

阅读数:179

评论数:0

《现代操作系统》(第三版)P76页 生产者消费者模型的程序的理解

Pthread提供许多可以用来同步线程的函数。其基本机制是使用一个可以被锁定和解锁的互斥量来保护每个临界区。一个线程如果想要进入临界区,它首先尝试锁住相关的互斥量。如果互斥量没有加锁,那么这个线程可以立即进入,并且该互斥量被自动锁定以防止其他线程进入。如果互斥量已经被加锁,则调用线程被阻塞,直到该...

2016-12-03 02:38:13

阅读数:493

评论数:0

PHP基础补全系列:Trait

这个系列的文章是用来学习PHP的一些不常用的语法特性,用来加强自己对PHP语法特性的理解。在大多数情况下都是作为自己的学习笔记,文章内容不会超出PHP手册,所以想了解相关特性的可以直接去看PHP手册。 PHP手册链接 PHP 5.4加入了trait。 个人理解为trait在PHP中变相实现了多集...

2016-11-17 17:34:55

阅读数:210

评论数:0

hdu 4513 吉哥系列故事——完美队形II(最大回文子串-manacher算法)

题意:求序列最大回文子串,且子串左侧必须单调非递增。 我就是看这道题需要O(n)的复杂度才能过,所以特意学习了一下manacher算法。 跟hdu3068一样,扫描的时候比较一下值的大小即可。 #include #include #define N 200010 int q_in[N],q[...

2016-11-16 17:24:20

阅读数:200

评论数:0

hdu 3068 最长回文(manacher算法)

题意:给出一个字符串,求这个字符串的最长回文子串。 关于manacher算法网上有很多讲解,我不再赘述。但是我看大部分讲解都没有解释为什么manacher算法的复杂度是O(n),我尝试着解释一下。 代码的关键在这里: dp[i]=line>i?min(dp[mark*2-i],line-i)...

2016-11-16 16:24:21

阅读数:194

评论数:0

hdu 2767 Proving Equivalences(强连通分量+缩点)

题意:给一个n个点,m条边的图,问最少增加多少条边,原图可以变成强连通图。 思路:分两步,第一步,求双连通分量,我使用的是tarjan算法。我尝试着解释一下:对于一个强连通图G,从它的a点出发遍历全图,最终遍历的终点也是a,实际上在便利过程中可以出现多次回溯操作,即存在多个终点,但是因为在每次更...

2016-10-25 11:19:54

阅读数:222

评论数:0

使用PHPWord读取Word文件并插入图片

刚才同学问我怎么读取一个word文件并插入图片,我觉得这种问题PHPWord肯定可以完成,但是他说弄不了。 我就写了个demo看一下,事实证明是可以的。 <?php date_default_timezone_set("Asia/Shanghai"); requir...

2016-10-20 16:15:23

阅读数:8772

评论数:1

hdu 1269 迷宫城堡(强连通)

题意:给定一个有向图,求该图是不是强连通的。 思路:从某点出发,正向和反向两次遍历图,如果都能到达所有点,则该图是强连通的。 强连通:在一个有向图G中,如果任意两点v1、v2存在v1到v2和v2到v1的路径,则称该图是强连通的。 #include #include #define N 100...

2016-10-20 14:52:47

阅读数:184

评论数:0

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