php
实战中遇到的PHP问题
痴情的程序员
分享不易,您的点赞就是我的动力!
展开
-
Linux挂载磁盘,开机自动挂载磁盘
首先使用命令blkid查看sdb的UUID和磁盘格式。挂载到app下 如果挂在不上去,可能是新盘要格式化。但是关机之后还要重新挂载,设置下开机自动挂载。箭头所指是要挂载的磁盘。查看文件磁盘使用情况。原创 2022-08-24 15:11:08 · 386 阅读 · 1 评论 -
mac brew 安装PHP 配置文件php-fpm.conf位置
输入命令php-fpm -tNOTICE: configuration file /usr/local/etc/php/7.4/php-fpm.conf test is successful这个就是配置文件的路径原创 2022-04-12 14:36:22 · 975 阅读 · 0 评论 -
重启服务器,目录消失,linux重新挂载磁盘
查看未挂载的磁盘fdisk -l磁盘 /dev/vda:21.5 GB, 21474836480 字节,41943040 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0x000d2717 设备 Boot Start End Blocks Id System/dev/vda原创 2021-09-26 14:15:54 · 384 阅读 · 0 评论 -
php接收数据会点转化为下划线
官网有解释:https://www.php.net/manual/zh/language.variables.external.php又亲自实践了一下,发现真的是这样原创 2021-09-13 13:12:07 · 239 阅读 · 0 评论 -
PHP 修改上传文件大小限制
php.ini中修改upload_max_filesize =设置的大小post_max_size post上传的大小max_execution_time设置脚本执行时间另外如果启用了内存限制,那么该值应当小于memory_limit选项的值重启phpnginx 配置文件中设置client_max_body_size 50m;重启nginx...原创 2021-08-05 14:44:19 · 259 阅读 · 0 评论 -
mac上常用的php命令重启php命令
重启php命令brew services listbrew services restart php@7.4原创 2021-08-05 14:38:51 · 779 阅读 · 0 评论 -
php 抽象类、接口、trait
抽象类: 通用的东西放到一块,写一个父类,不同的东西各个子类来实现抽象类不能实例化对象抽象类存在的目的是为了让子类继承抽象类的定义和普通类的定义一样,只不过前面加一个关键字,abstract抽象类里面一般都要有抽象方法,抽象方法是用来让子类实现的,而且子类必须实现,不实现就报错抽象方法只能是public 或者protected。因为只有这两总修饰才可以被继承抽象方法如果有参数,参数有 默认值,那么实现该方法的时候参数跟默认值也都要有抽象类可以继承抽象类,子类在实现的时候所有的抽象方法都得实现原创 2021-06-02 10:02:21 · 237 阅读 · 0 评论 -
PHP魔术方法
__get() 调用未定义的属性时调用__set() 给一个未定义的属性赋值时调用__isset() 当在一个未定义的属性上调用isset()函数时调用此方法__unset() 当在一个未定义的属性上调用unset()函数时调用此方法__sleep() 串行化的时候用__wakeup() 反串行化的时候调用__construct() 当一个对象被创建时调用此方法__destruct() PHP将在对象被销毁前(即从内存中清除前)调用这个方法__call() 当调用一个未定义(包括没有权限访问原创 2021-06-01 15:22:51 · 120 阅读 · 2 评论 -
tp6 count distinct统计时根据字段去重
代码:AppointmentModel::field(['identity'])->count('distinct identity')生成的sql:SELECT COUNT(DISTINCT `identity`) AS think_count FROM `dg_appointment`;下面是tp6手册内容我尝试着这样写 发现生成的sql不对AppointmentModel::distinct(true)->field(['identity'])->count('id原创 2021-05-27 17:27:23 · 2430 阅读 · 0 评论 -
PHP二维数组判断重复值 数组中有重复元素对其他元素进行处理
在做统计时遇到个问题,拿到一个二维数组之后有重复的元素,下面举例:将所有二维数组里面name值相同的 合并成一个数组,并将val相加,主要处理的就是“其他”和“未知”这两个,具体思路:讲数组的name作为key放入新的数组 对val进行计算(如果业务需求有多个相同的元素可以拼接起来,例如name和grade 将这两个元素拼接起来作为数组的key)然后我们只需要新数组的value 即可,key 就是不可重复的那个要判断的值上代码array(40) { [0] => array(2) {原创 2021-05-13 14:51:40 · 997 阅读 · 0 评论 -
微信公众号 redirect_uri 参数错误
微信公众号 redirect_uri 参数错误官方文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html#0出现此问题的两个原因:1、微信后台的授权回调页面域名设置不正确按照文档中说的配置不要加http“授权回调域名配置规范为全域名,比如需要网页授权的域名为:www.qq.com,配置以后此域名下面的页面http://www.qq.com/music.ht原创 2021-05-11 16:43:23 · 329 阅读 · 0 评论 -
解决上传图片 open() “/usr/local/var/run/nginx/client_body_temp/0000000002“ failed (13: Permission denied)
tp6上传图片上传文件 nginx 报错500马上去查了一下nginx日志发现报错信息如下open() "/usr/local/var/run/nginx/client_body_temp/0000000002" failed (13: Permission denied)关于client_body_temp目录的作用,简单说就是如果客户端POST一个比较大的文件,长度超过了nginx缓冲区的大小,需要把这个文件的部分或者全部内容暂存到client_body_temp目录下的临时文件。看网上说有原创 2021-05-06 14:35:05 · 570 阅读 · 0 评论 -
thinkphp composer 安装 think-image
到项目目录下 composer require topthink/think-image如果php没有开启GD库扩展会安装失败原创 2021-05-04 12:52:55 · 1367 阅读 · 0 评论 -
thinkphp 启动worker
项目目录下php think worker:server start未配置环境变量/usr/bin/php73 think worker:server start守护进程启动/usr/bin/php73 think worker:server -d修改代码就要重启服务/usr/bin/php73 think worker:server stop/usr/bin/php73 think worker:server -d...原创 2021-04-30 10:04:06 · 1221 阅读 · 0 评论 -
Call to undefined function curl_init()
确定php.ini 中curl 扩展已开启 但是phpinfo中 不显示有curl扩展在php的目录下,libssh2.dll 复制粘贴到,apache的bin目录下原创 2021-04-30 10:03:20 · 285 阅读 · 0 评论 -
vcruntime140.dll 14.0与PHP版本不兼容。PHP Warning: ‘vcruntime140.dll‘ 14.0 is not compatible with this PHP
PHP Warning: ‘vcruntime140.dll’ 14.0 is not compatible with this PHP build linked with 14.16 in Unknown on line 0这里讲不兼容的问题,很好解决,原因是PHP 7.4.x需要用于Visual Studio 2019的Microsoft Visual C ++ Redistributable可在此处下载:进去之后向下滚动→其他工具和框架→Microsoft Visual C++ Redist原创 2021-04-30 10:01:18 · 3755 阅读 · 0 评论 -
apache 的 ab(apachebench 缩写) 测试
ab -n 100 -c 100 http://www.hn_digital.com/index/Appointment/actAppointTest-n发出800个请求,-c模拟800并发,请求数要大于或等于并发数。相当800人同时访问,后面是测试url )进到apache目录 启动apachemr.gao@gaoxianshengdeMacBook-Pro apache2 % ab -n 100 -c 100 http://www.hn_digital.com/index/Appointment/原创 2021-04-30 10:00:56 · 60 阅读 · 0 评论 -
权限树插件报错Uncaught TypeError: Cannot read property ‘msie’ of undefined
错误:Uncaught TypeError: Cannot read property ‘msie’ of undefined原因:$.browser方法在 jQuery 1.9中被移除了自己写一段 $.browser代码进去(推荐)写在jQuery引用之后的script里面jQuery.browser = {};(function () { jQuery.browser.msie = false; jQuery.browser.version = 0; if (nav原创 2021-04-30 09:59:52 · 91 阅读 · 0 评论 -
使用phpexcel导出表格时,报错class XMLWriter‘not found.
现象:使用phpexcel导出表格时,报错:class XMLWriter’not found.分析检查:查看phpexcel使用说明,得知需要xmlwriter模块,查php已安装模块(# php -m),没有所需模块XMLWriter。也可以调用phpinfo()函数,查看相关模块安装情况。处理:安装php-xml模块。linux下,执行下述命令:yum -y install php-xml。之后该问题解决。...原创 2021-04-30 09:59:20 · 553 阅读 · 0 评论 -
用Navicat运行一个比较大的.sql文件时报错:[Err] 2006 - MySQL server has gone away
因为navica本身做了限制 所以导致报错。解决方法:工具–> 服务器监控–>mysql出现下面页面:选择 变量 ,找到 max_allowed_packect ,修改它的值即可。原创 2021-04-30 09:57:55 · 56 阅读 · 0 评论 -
navicat导出数据字典
select TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_TYPE,COLUMN_COMMENT from information_schema.columns where TABLE_SCHEMA='数据库名'原创 2021-04-29 15:41:35 · 93 阅读 · 0 评论 -
mysql批量修改表前缀
SELECTCONCAT('ALTER TABLE ',table_name,' RENAME TO te_',substring(table_name, 4),';')FROMinformation_schema. TABLESWHEREtable_schema = 'testadmin'AND table_name LIKE 'hp_%';原创 2021-04-29 15:40:33 · 67 阅读 · 0 评论 -
tp6模型名称与数据库表名不一致SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘jn.jnhead‘ doesn‘t exist
SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘jn.jn_head’ doesn’t existtp6 Model 名称与数据库表名不一致的问题定义$nameprotected $name = 'article'原创 2021-04-29 15:30:35 · 593 阅读 · 0 评论 -
TP6 跨域问题 Access to XMLHttpRequest at ‘https://‘ from origin
前端传Access-Token 报错Access to XMLHttpRequest at ‘https://zyzapi.gblw.net/home/myinfo’ from origin ‘http://localhost:8088’ has been blocked by CORS policy: Request header field access-token is not allowed by Access-Control-Allow-Headers in preflight respons原创 2021-04-29 15:26:21 · 7892 阅读 · 0 评论 -
mysql报错SQLSTATE[HY000] [2002]
将hostname由localhost 改为127.0.0.1 就好使了 原因不知道原创 2021-04-29 15:20:45 · 489 阅读 · 0 评论 -
curl 传个二维数组报错 把字符串当数组用
解决办法curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));原创 2021-04-29 15:00:06 · 177 阅读 · 0 评论 -
微信公众号创建菜单接口 有汉字创建失败
public function wxmenu(){//菜单上也是正序排列url="https://api.weixin.qq.com/cgi−bin/menu/create?accesstoken=".url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".url="https://api.weixin.qq.com/cgi−bin/menu/create?accesstoken=".this->wx_token;原创 2021-04-29 14:57:45 · 273 阅读 · 0 评论 -
mac linux安装php redis扩展
安装 php-redis扩展原创 2021-04-29 14:28:39 · 134 阅读 · 0 评论