PHP 调试函数 debug_backtrace

有时候我们想知道这个函数或方法的调用堆栈,也就是它是如何一级一级是被调用到的,可以用 PHP 的 debug_backtrace 函数打印,就像这样:

继续阅读“PHP 调试函数 debug_backtrace”

Laravel中的一个后期静态绑定

关于 PHP  的 new static 延迟静态绑定,或者叫后期静态绑定,在 Laravel 中遇到一个使用上的问题。如下,在 Laravel 中调用 Model 新增数据的时候,首先给 Model 加了一个获取分表的方法:

继续阅读“Laravel中的一个后期静态绑定”

PHP笔试面试题精选(一)

本次课程主要围绕 PHP 面试和笔试中经常会出现的一些知识点,但是面试官会在笔试题基础上深入扩展,那么你知道如何更好的回答让面试官满意吗?题目收集自腾讯,迅雷,美图等公司的笔试面试题,以及本人面试经历中印象中的知识点,同时也分享一些面试的经验,相信对你一定有很大的参考价值。

继续阅读“PHP笔试面试题精选(一)”

Golang 中 url 的 encode/decode

PHP 有 urlencode 和 urldecode 两个函数可以方便的对 url 进行编码和解码,在 Go 中,使用 net/url 库也很简单实现,具体示例如下:

继续阅读“Golang 中 url 的 encode/decode”

PHP写文件加锁

用 PHP 的 file_put_contents 函数以追加的方式,循环 10 w 次写文件,耗时很多。因为 file_put_contents 函数每次都要打开文件,写入文件,然后关闭文件。

以下是测试:

继续阅读“PHP写文件加锁”

《性感的 PHP — 现代化 PHP 开发》PPT 分享

说好的把这次技术分享的 PPT 发出来的,一直没时间弄,现在整理了一下,并导出了一份 PDF 版的 PPT,给大家参考。(PS:本次技术分享仅仅是介绍一些关于现代化 PHP 开发的技术,并不是讲某个方面的高深技术和经验,即便如此,针对目前的 PHP 现状,很多项目,公司和开发者,还在使用过时的 PHP 技术,这个分享还是有价值的)。

本次技术分享主要讲了一些现代化 PHP 开发的技术,PPT 重点介绍了命名空间,闭包,匿名函数,Traits 这些新特性,以及介绍了 Composer 依赖包管理器和 PSR 规范。

继续阅读“《性感的 PHP — 现代化 PHP 开发》PPT 分享”

PHP 进程用户建立 ssh 信任

在 Gitlab 上的代码仓库,如果是通过 ssh 方式拉取代码,需要在两台机器之间建立ssh信任,而通过 WEB 系统(基于 PHP)操作 git,也要建立 PHP 进程用户和 Gitlab 机器的 ssh 信任。简而言之,就是两台机器用户之间建立信任很简单,但是PHP进程用户也要建立 ssh 信任,这里面遇到一些问题。这涉及到 Linux 用户的概念和权限问题,其实还是对 Linux 不够了解。

继续阅读“PHP 进程用户建立 ssh 信任”