:

PHP8 正式发布稳定版

发布于:2020-11-27 13:52 作者:song100e 浏览:614 分类:PHP
        2020 年 11 月 26 日, PHP正式发布稳定版 php8。一些新特性如Union Types (联合类型)Named Arguments (命名参数)、Match Expressions (Match表达式)、Attributes (注解)、Constructor Property Promotion (构造函数属性提升)、Nullsafe Operator (Null安全操作符)、Weak Maps(弱映射)、Just In Time Compilation (JIT)。And much much more...

        其中最核心的当属即时编译JIT了。

php8-stable.PNG

阅读全文>>

标签: php8

0

关于 excel 导入手机号提取时被自动加上多余空万国码的问题

发布于:2020-11-24 8:51 作者:song100e 浏览:574 分类:PHP

        最近在做一个 excel 导入功能,通过phpexcel读取到的数据请求第三方接口,结果提示手机号码不正确,检查请求日志才知原来传递参数编码有问题,日志如下(部分已删除):

请求时间:2020-11-23 18:01:07

响应结果:
url:https://xxxx.cn/v1/member/create-member-info?app_id=7727208a
data:{"mobile":"\u202d15677387000\u202c","password":"111111","source":"686"}
return:{"state":false,"code":0,"msg":"手机号格式不正确","data":""}

time:0.5885968208312988

        网上一查原来别人也遇到过类似问题,通过去除特殊编码修正手机号码, 网上是java代码,转成php代码如下:


/**
     * @desc 去除特殊编码,修正手机号
     */
    function trimPhone($phone){
        $tempPhone = '';
        for ($i=0; $i<strlen($phone); $i++){
            if(ord($phone[$i]) >= 48 && ord($phone[$i]) <= 57){
                $tempPhone .= $phone[$i];
            }
        }
        return $tempPhone;
    }



标签: PHPExcel

0

MySQL sum if 案例

发布于:2020-11-16 13:40 作者:song100e 浏览:547 分类:MySQL

SUM(IF(`hosts`.state = 0, 1, 0)) AS hostNomal  ,这个语句,当 hosts.state 的值为 0 时,和加 1,不为 0 时,和加 0。类似于程序里的三元表达式。

mysql_sum_if.png

标签: sumif

0

Yii2 发送邮件

发布于:2020-9-24 13:47 作者:song100e 浏览:439 分类:Yii2

    1,Yii2.0会自带的 swiftmailer,所以不用安装,只需配置下就可以。

    2,获取 SMTP密码, 这里以网易 163为例。

    点击查看原图

阅读全文>>

标签: swiftmailer

0

《大型网站技术架构》

发布于:2020-9-22 8:18 作者:song100e 浏览:366 分类:人丑就要多读书

大型网站技术架构.jpg


         本书通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,为读者呈现一幅包括技术选型、架构设计、性能优化、Web 安全、系统发布、运维监控等在内的大型网站开发全景视图。
        本书不仅适用于指导网站工程师、架构师进行网站技术架构设计,也可用于指导产品经理、项目经理、测试运维人员等了解网站技术架构的基础概念;还可供包括企业系统开发人员在内的各类软件开发从业人员借鉴,了解大型网站的解决方案和开发理念。


0

Linux 监测进程脚本

发布于:2020-9-11 8:43 作者:song100e 浏览:386 分类:PHP
    这里以监测 swoole 的 socket 进程为例。
    在某些情况下,如系统负载过大 swoole 无法申请到内存而挂掉、swoole 底层发生段错误、Server 占用内存过大被内核 Kill,或者被某些程序误杀。那 websocket-server 将无法提供服务,导致业务中断,公司收入出现损失。
    有一个非常有效并且在 BAT 等大型公司常用的方案是 crontab 重启监控。
原理是每 1 分钟执行一次 shell 脚本,检测 swoole 的 websocket-server 进程是否存活,如果存在则跳过。如果发现主进程已经挂掉,则执行 restart 逻辑,先 kill 掉所有残留的子进程,然后重新启动 Server。

在系统的crontab中加入:

*/1 * * * * /data/script/check_socket.sh

阅读全文>>

标签: swoole

0

CentOS7 开机自启动 Redis6

发布于:2020-9-11 8:42 作者:song100e 浏览:375 

    CentOS 7 以上是用 Systemd 进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。Systemd 服务文件以 .service 结尾,比如现在要建立 redis 为开机启动,如果用 yum install 命令安装的,yum 命令会自动创建 redis.service 文件,直接用命令 systemcel enable redis.service 设置开机启动即可。

status_redis.PNG

阅读全文>>

0

CentOS7 安装 Redis6

发布于:2020-9-11 8:41 作者:song100e 浏览:366 

    随着 Redis6 发布, 终于迎来了新的特性,那就是多线程!本人之前一直使用5的老版本。

    1,下载。wget http://download.redis.io/releases/redis-6.0.7.tar.gz

    2,解压。tar -zxvf redis-6.0.7.tar.gz

    3,移动目录:mv redis-6.0.7 /usr/local/redis6

    4,编译: make

    5,出错,需要升级 gcc 版本

    ...

阅读全文>>

0

tp5 使用注意和规避点

发布于:2020-7-17 14:34 作者:song100e 浏览:398 

1,有时候我们提交的时候传的是带 html, 可接收到的是去除掉 html 标签的内容。

//获取当前请求的所有变量(原始数据)
$request =  $this->request->param(false);

2,find_in_set

$where[] = 'find_in_set('.$positionId.',position) ';
$where[] = ['exp','find_in_set('.$positionId.',position)'];

0

SAP ABAP 与 JSON 互转之 PHP 版本

发布于:2020-7-7 15:05 作者:song100e 浏览:480 分类:PHP
        最近有个小项目需要和第三方系统 SAP 对接,这里记录下遇到的问题。

        SAP ABAP 提供 RESTful web service 从技术层面需要解决的三个问题:

  1. SAP 对外提供 Http Service 接口。
  2. 在 SAP 端解决诸如 authentication,cookie, session 等 Http server 必须解决的问题
  3. SAP 端实现对响应 (response)以 json 格式返回给客户端,对客户端 json 格式的请求(request)解析并处理.

如何实现 ABAP 对象 与 JSON 互转,这里只介绍PHP版本


SAP_json.PNG

阅读全文>>

标签: SAP

0

1 2 3 4 5 6 7 8 ... »