![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php后端开发
sun_cainiao
这个作者很懒,什么都没留下…
展开
-
vmware 共享文件夹
需要安装 vmware-tools, 教程网上有很多。试了下开源的 open-vm-tools ,还是无法使用共享文件夹,必须要装 vmware-tools才行。原创 2017-05-31 19:07:50 · 155 阅读 · 0 评论 -
laravel5.5 Facade
Facade原理 以View::make()为例1.调用View::make()时,会先去config/app.php中的aliases数组中找到实际调用的Facade类。 'aliases' => [ //.... 'View' => Illuminate\Support\Facades\View::class, ],2.在Ill原创 2018-01-11 00:26:49 · 318 阅读 · 0 评论 -
PHP中的数组合并
偶然在工作中遇到的一个问题,php如何快速,高效的合并两个有序数组(键名为从0开始的连续整数,比如[1,2,3]),要求合并后的数组有序且键名为从0开始的连续整数(这样*json_encode*之后才不会带上键名)暂时的解决办法先array_merge,array_merge对于数字键名的数组会将重复值附加到后面在array_unique,此时数组内的值唯一,但是键名依然不连续原创 2018-01-21 02:50:21 · 197 阅读 · 0 评论 -
php在模板中传变量给js
正确方式var XXX = echo json_encode($xx) ?>;即使json_encode把中文转成了unicode编码,js接受变量时仍能恢复成中文。错误方式var xxx = JSON.parse( echo "'".json_encode($xx)."'" ?>);对于带有转义字符的json字符串,比如{"a":"{\"b\":\"test\"}"原创 2018-01-18 01:16:51 · 2346 阅读 · 0 评论 -
laravel blade模板引擎学习
@extends@extends用来指定子模板所继承的模板:@extends('test.master')<!-- 表示继承test目录下的master.blade.php模板 --!>@sectionblade模板引擎4.0建议用 @stop 替换 @endsection ,不过是向下兼容的,所以 @endsection 还可以用。 @section+@e...转载 2018-02-15 13:57:33 · 306 阅读 · 0 评论 -
安装phpmyadmin
翻译并修改自https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-with-nginx-on-an-ubuntu-14-04-server安装phpmyadmin on ubuntu14.04 serversudo apt-get install phpmyadmi...翻译 2018-02-15 20:24:19 · 485 阅读 · 0 评论 -
nginx 配置及注意点
nginx 配置文件如下:...#location 1location / { try_files $uri $uri/ =404;}#会先到网站根目录下寻找指定的 404 页面, 没有找到就会用 nginx 生成的 404 页error_page 404 /404.html#location 2location ~ \.php$ { # try_file...原创 2018-03-10 13:36:10 · 332 阅读 · 0 评论 -
CGI 1.1
不完全翻译,因为部分英文内容有点难以理解,水平有限。这不是一个强制的规范,所以各种实现都不一定完全按照本规范。摘要The Common Gateway Interface (CGI) is a simple interface for running external programs, software or gateways under an information serve...翻译 2018-03-16 18:15:38 · 708 阅读 · 0 评论 -
php fpm 设置项 cgi.fix_pathinfo=1 漏洞不再出现
之前看网上说关于 cgi.fig_pathinfo=1 时的配置漏洞:http://www.laruence.com/2010/05/20/1495.html试了下后发现该漏洞在目前高版本的 php 中已经不再出现了,会直接显示 Access denied,查看 nginx 错误日志如下:Access to the script '/home/ksun/test' has been den...原创 2018-03-18 16:41:01 · 3901 阅读 · 0 评论 -
在 ubuntu 下用 checkinstall 代替 make install
许多最新版本的软件无法通过 apt 安装,只能到官网上下包包下载之后又大多需要 make install 来安装。make install 安装后卸载是非常麻烦的。在 ubuntu 下可以用 checkinstall 来代替 make install。 checkinstall会在安装的同时追踪安装过程,最终生成一个 .deb 文件,之后可以方便的通过包管理器来删除安装的包。以...翻译 2018-03-05 23:15:25 · 1484 阅读 · 0 评论 -
php编程注意点
php编程注意点原创 2017-11-29 22:54:33 · 168 阅读 · 0 评论 -
utf8与utf8md4
mysql的utf8字符集最多只支持3字节表示的字符,对于4字节的utf8字符需要用utf8mb4代替。即:修改数据库连接和表相应字段为utf8mb4插入数据时: 数据库连接 表字段 结果 utf8 utf8 失败 utf8mb4 utf8 失败 utf8 utf8mb4 失败原创 2017-09-02 19:09:40 · 2101 阅读 · 0 评论 -
让局域网内除主机以外的其他电脑访问虚拟机
开启虚拟机的nat模式,将某端口映射到虚拟机80端口即可。不需修改hosts文件关于vmware nat服务自动关闭:重装了vmware,虚拟机不会丢失原创 2017-05-31 19:18:23 · 2944 阅读 · 0 评论 -
laravel查询构造器
使用laravel查询构造器出现了参数错位的情况:后来发现将where子句放到最后就好了原创 2017-06-09 11:35:08 · 293 阅读 · 0 评论 -
“Headers already sent” error in PHP
问题:fastcgi_finish_request()之后使用header()函数报错:Cannot modify header information - headers already sent by 原因:运行laravel的服务器向客户端发送响应之后不能再使用php的header()函数:Headers need to be sent first before an原创 2017-06-22 16:04:57 · 484 阅读 · 0 评论 -
laravel 设置数据库时区 报错
用laravel DB的select()方法内嵌raw()方法设置时区时:DB::connection($db_name)->select(DB::raw("SET time_zone = '{$mysql_timezone}'"));报错:General error: 2053 (SQL: SET time_zone = '-03:00')改用statement()方法则不原创 2017-07-12 20:01:19 · 1223 阅读 · 0 评论 -
laravel mysql时区设置问题
在代码中有设置数据库连接的时区,并创建了数据库连接: $this->mysql_config = Config::get('database.connections.mysql'); $this->mysql_config['options'] = array( PDO::MYSQL_ATTR_INIT_COMMAND => "SET time_zone =原创 2017-07-06 17:39:19 · 1636 阅读 · 0 评论 -
web-app 消息推送功能(浏览器为chrome59,firefox54)
1、启用该功能必须使用安全的连接(https, localhost, 127.0.0.1等等)2、使用自签名证书开启https,导入证书(导入失败则需要联系管理员修改组策略中的证书相关设置)。3、此时firefox需要将网站添加到例外,chrome需要修改启动选项: 将快捷方式中的目标修改为"C:\Program Files (x86)\Google\Chrome\App原创 2017-07-26 19:28:46 · 1464 阅读 · 0 评论 -
windows 在sublime text 3中安装sublimelinter-php
1.安装SublimeLinter2.安装SublimeLinter-php3.安装php4.Preference->Package Settings->SublimeLinter->Settings - user,添加如下内容:{ "lint_mode": "load_save", "paths": { "linux": [], ...原创 2017-09-05 21:26:43 · 557 阅读 · 0 评论 -
占两个字节的“空白符”
在修改开源论坛phpBB时,将一段文本字符串输出到html页面上时发现不能按单词换行,而是会打断单词。在浏览器上右键编辑后发现"空格"变成了 于是就想在输出前用str_replace将 替换成真的空格--str_replace(' ',' ',&text);当然结果失败了。最后,先用的urlencode()将&text输出,"空格"变成了%C原创 2017-10-18 09:58:40 · 6486 阅读 · 0 评论 -
什么是cgi,fastcgi,php-fpm
首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者。web server(比如说nginx)只是内容的分发者。比如,如果请求/index.html,那么web server会去文件系统中找到这个文件,发送给浏览器,这里分发的是静态数据。好了,如果现在请求的是/index.php,根据配置文件,nginx知道这个不是静态文件,需要转载 2017-10-15 16:53:15 · 239 阅读 · 0 评论 -
制作 php + nginx 的 docker 镜像
Dockerfile先新建目录,在目录下新建 Dockerfile 文件,docker 会根据该文件来 build 镜像。# 借用官方的的 php-fpm 镜像FROM php:7.2.4-fpm-stretch# 用来代替 cd,最好用绝对路径WORKDIR /app# 复制内容COPY . /app# 安装 nginxRUN apt-get update &am...原创 2018-04-16 00:04:05 · 1642 阅读 · 0 评论