首页 PHP专区
  • 【1】【原创】如何解决PHP开发环境出现“计算机中丢失MSVCR110.dll”问题?

    blogdaren 2018-04-22   210次来访
    问题背景: 问题原因: 系统中没有安装 "Visual C++ Redistributable for Visual Studio 2012" 解决方案: 1.  点击打开:http://www.microsoft.com/zh-CN/download/details.aspx?id=30679 2.  选择"中文(简体)" --...
  • 【2】【原创】如何解决运行pear出现“PHP_PEAR_INSTALL_DIR is not set correctly”问题?

    blogdaren 2018-04-22   192次来访
    问题背景: windows环境运行pear以后,运行pear出现 "PHP_PEAR_INSTALL_DIR is not set correctly" 问题截图: 问题原因: 1. 第一个原因普遍是网上说的:PHP_PEAR_INSTALL_DIR环境变量设置不正确导致。 2. 第二个原因很重要,那就是中文目录是识别不了的,不支持,博主就是踩...
  • 【3】How to fix PHP configure “CC Internal error Killed (program cc1)” error?

    blogdaren 2018-04-18   291次来访
        For most case, you will typically install PHP from the repository of your corresponding Linux distribution.      For example, on CentOS or Red ...
  • 【4】workerman使用redis存储遇到的“脏数据读”问题

    blogdaren 2018-04-13   276次来访
    如上图所示, 问题有三: (1) ":11269" ---> 即数字11269前为何会多出个冒号来【所谓的脏数据】? (2)如何避免上述1提到的现象? (3)不同的客户端为何查询到了相同的数据?比如图示 11271; (4)如何避免上述2提到的现象? 问题产生原因以及解决方案: (1)问题原因: workerm...
  • 【5】【原创】深入理解 array_reduce() 执行原理

    blogdaren 2018-04-09   244次来访
    研究背景 首先移步至文中DEMO代码,如果符合你预期运行结果,请忽略。本人的解读未必正确,欢迎学习指正。 array_reduce (PHP 4 >= 4.0.5, PHP 5,PHP7) array_reduce -- 用回调函数迭代地将数组简化为单一的值【常配合闭包一起使用】 函数说明 mixed array_...
  • 【6】PHP扩展之VLD:查看OPCODE中间代码

    blogdaren 2018-04-03   276次来访
    什么是VLD? VLD是PHP官方PECL仓库的一个PHP扩展,目前最新版本是 0.14.0(2016-12-18), 其作用是:显示PHP脚本的内部表示(opcode)。换句话:可以查看PHP程序的opcode。 安装VLD扩展: 1. 官方下载:http://pecl.php.net/package/vld   【# ...
  • 【7】关于pcntl_wait与信号中断触发以及pcntl_signal_dispatch的问题

    blogdaren 2018-03-26   358次来访
    直接贴一段代码: <?php function stopAll($sig){ echo "master caught a signal $sig" . PHP_EOL; } $pid = pcntl_fork(); if($pid > 0) { $master_id = posix_getpid(); echo "(paren...
  • 【8】socket_create和stream_socket_server创建出来的socket有啥区别?

    blogdaren 2018-03-20   327次来访
    PHP提供了两种类型的socket:socket 和 stream_socket, 二者api不兼容。 socket socket_create 创建的socket更底层,基本和c的socket接口一样,可以设置很多socket选项, 和c接口一样使用起来比较繁琐。操作底层socket必须使用socket_xx系列函数,无法使用stream类型的函数,比如无法使用fread fwr...
  • 【9】PHP守护进程创建的标准流程

    blogdaren 2018-03-20   253次来访
    什么是守护进程? 守护进程是运行在后台并且不受终端控制的进程(如输入、输出等),一般的网络服务都是以守护进程的方式运行。 守护进程创建的标准流程: 调用umask设置文件创建的掩码 fork子进程并关闭父进程 调用posix_setsid创建新会话 把当前工作目录切换为根目录 把不需要的文件描述符全部关闭 ...
  • 【10】PHP采集利器之phpQuery的用法详解

    blogdaren 2018-03-14   295次来访
    官方文档地址: https://code.google.com/archive/p/phpquery/wikis See Gitub: https://code.google.com/p/phpquery https://github.com/TobiaszCudnik/phpquery https://github.com/phpquery/phpquer...
  • 【11】【原创】关于PHP CURL返回数据乱码的问题解决方法

    blogdaren 2018-03-08   302次来访
    问题背景: 抓取某网站数据,FireFox的FireBug检测到返回数据正常,但是PHP CURL返回的数据是一堆乱码。 问题原因: 服务端返回的数据被压缩过了,curl 未能正确解压导致。 解决办法: curl_setopt($ch, CURLOPT_ENCODING, "");  备注说明: ...
  • 【12】PHP中在类名后面加一个::class是什么意思?比如:Database::class

    blogdaren 2017-12-26   621次来访
    答案: 1. 自 PHP 5.5 起,关键词 class 也可用于类名的解析。 2. 使用 ClassName::class 可以获取一个字符串,包含了类 ClassName 的完全限定名称。 3. 这对于使用了 命名空间 场景的类非常适用。
  • 【13】php 的 opcache 和 php jit 有什么区别?

    blogdaren 2017-11-24   841次来访
    1. 概念 JIT这个概念其实来自Java,在Java里,JIT编译器的工作过程就是将字节码编译为机器码的过程。 如果把PHP和Java做对应,那么PHP编译成OPCode的过程就是Java编译为字节码的过程,而引申起来,PHP的JIT,也就是把OPCode编译为机器码的过程。 更简单的说,Zend引擎将PHP程序编译成OPCode,而后再交给PHP解释器执行,这样的过...
  • 【14】【原创】PHP Curl Problem with the SSL CA cert (path? access rights?) 解决

    blogdaren 2017-09-28   1111次来访
    问题背景: 早上起床收到短信提醒,WEB服务器集群发现漏洞,于是更新服务, 其中一条是: yum update openssl  问题现象: 1. 命令行直接使用系统的curl命令一切正常 2. LAMP环境中调用curl则报错: Curl Problem with the SSL CA cert (path? access rights?)...
  • 【15】为什么要考虑把代码抽象化, 它到底比硬编码好在哪?

    blogdaren 2017-09-22   811次来访
    把代码抽象化就好比发工资,大家发了工资后要做什么,肯定是不一样的,有的人要上缴老婆,有的人要还贷款,有的人要给父母家用,等等。 如果我们直接去定死了发了工资就干什么,那肯定不适用所有人的情况;而且一般情况下,我们也只需要知道工资发下来就行了,至于工资拿来干嘛,那根本不是别人关心的事。 转化成代码的话,那我们只要规定好每个工作人员都有个拿到工资的接口,至于接口里面具体要实现什么样的功能,每个人自...