
PHP
最凶残的小海豹
这个作者很懒,什么都没留下…
展开
-
thinkphp6 不支持:redis错误
【代码】thinkphp6 不支持:redis错误。原创 2023-11-23 15:14:43 · 2347 阅读 · 0 评论 -
ThinkPHP6.1 多应用模式的一些事儿
www.xxx.com/admin (注意配置伪静态,没配置的话 需要用 www.xxx.com/index.php/admin)www.xxx.com/api(注意配置伪静态,没配置的话 需要用 www.xxx.com/index.php/api)文件夹(TP 是根据是否有这个文件夹来判断单应用模式还是多应用模式的)。到这里多应用就配置完成了,后续继续补充其他内容。TP安装就不说了,直接从安装完成开始了。原创 2023-11-23 14:11:59 · 537 阅读 · 0 评论 -
解决PHP报错 Call to undefined function exif_imagetype()
无效,需要在进入PHP安装扩展里面安装。前面的分号去掉,就开扩展了,另外记得。使用宝塔的时候,我遇到一种情况,修改。修改完成后,记得重启。原创 2023-03-15 10:51:49 · 728 阅读 · 0 评论 -
thinkPHP跨域问题 Access to XMLHttpRequest at ‘http://xxx.com/xxx.html‘ from origin ‘https://aaa.aaa.com‘
获取全部数据的方式,会对数据进行过滤,前端请求就会出现跨域报错的情况。的获取数据的方式,可以尝试下面的方法。等全部获取数据的方式。原创 2023-02-28 18:23:19 · 2461 阅读 · 0 评论 -
PHP解析JSON.stringify传递的参数
PHP解析JSON.stringify传递的参数原创 2023-02-27 21:15:01 · 1325 阅读 · 0 评论 -
ThinkPHP5 报错variable type error: array (PHP报错)
报错variable type error: array原创 2022-11-22 09:49:01 · 2820 阅读 · 0 评论 -
PHP 报错 Resource temporarily unavailable 无法删除上传的资源
PHP 报错 Resource temporarily unavailable 无法删除上传的资源。我遇到的是第二种情况,我将图片移动到自己创建的临时文件夹里了,处理完之后,需要删除临时文件夹内的文件。,但是我没清除变量,所以导致删除失败。删除之前操作文件的变量。(资源暂时无法使用)原创 2022-11-16 10:13:33 · 1359 阅读 · 0 评论 -
PHP 生成/保存的图片不清晰
我遇到的问题是使用 `imagejpeg` 保存图片的时候,保存下来的图片不清晰原创 2022-09-27 21:09:46 · 704 阅读 · 0 评论 -
thinkphp模板 使用PHP函数(传递参数)
thinkphp模板 中想使用PHP的一些函数,要传参数的时候,可以使用 `###` 代表前面的的变量。原创 2022-09-27 20:24:00 · 864 阅读 · 0 评论 -
thinkphp模板 数字格式化
//number_format {$num|number_format=2} //千分位,保留两位小数//round {$num|round=2} //四舍五入保留两位小数原创 2021-09-27 23:18:12 · 641 阅读 · 0 评论 -
thinkphp where使用IN判断条件
// 注意 where 使用IN的时候,条件是个一维数组Vip::where('id','IN',$id_arr)->select();原创 2021-09-25 16:28:44 · 1270 阅读 · 0 评论 -
thinkphp 数据库的数据增加或减少(setInc, setDec)
// id为2的会员积分增加6$Vip::where('id',2)->setInc('score',6);// id为2的会员积分增加1$Vip::where('id',2)->setInc('score');// id为2的会员积分减少6$Vip::where('id',2)->setDec('score',6);// id为2的会员积分减少1$Vip::where('id',2)->setDec('score');...原创 2021-09-25 16:25:16 · 856 阅读 · 0 评论 -
PHP 保存文件(json, txt等)
// 基础文件夹地址(DS就是/)// 下面等同于:$path = ROOT_PATH.'public/user_info/test/';$path = ROOT_PATH.'public'.DS.'user_info'.DS.'test'.DS;// 判断文件是否存在if(!file_exists($path)){ // 创建文件夹 //创建一个有读写权限的目录,最好使用以下代码,不要直接使用mkdir函数指定权限,以避免系统umask的影响,要注意一点,权限值最好使用八进制表示,即“0”开头原创 2021-09-25 16:21:21 · 2456 阅读 · 0 评论 -
PHP获取系统时间的方法(毫秒数)
php中获取时间方法是date(),在php中获取时间戳方法有time()、strtotime();date() :date(format, timestamp),format为格式、timestamp为时间戳(可选)。time():返回当前时间的 Unix 时间戳,没有参数。strtotime(time, now) :将英文文本格式的时间字符串解析为 Unix 时间戳。time 为必填,规定要解析的时间字符串;now 用来计算返回值的时间戳,如果省略该参数,则使用当前时间。一、获取当前时间戳//原创 2021-09-08 10:17:43 · 12771 阅读 · 0 评论 -
PHP Cannot use object of type stdClass as array 错误
报错信息:Cannot use object of type stdClass as array原因: 使用json_decode() 将json字符串转成json对象时,使用数组的方式操作json对象。(使用数组对应的函数,使用[] 方式取值)。解决方法:方法一: 将 json_decode 的第二个变量设置为 true。会强制转成数组json_decode($data, true);方法二:将json_decode转换的值,用对象的方式进行操作。$data->name...原创 2021-06-15 19:18:45 · 6072 阅读 · 0 评论 -
ThinkPHP5 接收json数据无法解析/数据出错
ThinkPHP 接收前端发送的JSON数据的时候,使用json_decode解析出来的数据是 null 。原因: ThinkPHP 默认会过滤接收的数据,所以JSON字符串被过滤以后,就出错了。解决方案: 使用下列方法接收数据,接收的是原始数据(未过滤)// 获取当前请求的所有变量(原始数据)Request::instance()->param(false);// 获取所有的get变量(原始数组)Request::instance()->get(false);// 获取全部的po原创 2021-06-10 11:19:28 · 3238 阅读 · 0 评论 -
PHP绑定Access-Control-Allow-Origin 多个值
Access-Control-Allow-Origin 一半情况下只能绑定一个值,当然 * 可以任意,但是不推荐,下面介绍如果绑定多个值。PHP 代码// 数组里面放需要绑定的域名static public $origin_arr = [ 'http://xxxx.xxxx.com', 'http://localhost:8080',];// 这一步骤是验证,然后绑定$origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGI原创 2021-06-10 10:04:17 · 3724 阅读 · 0 评论 -
thinkphp5 控制器不存在 解决方法
一般控制器不存在,都是因为命名空间没有修改,请检查一下你的对应的控制器里面的第一行,的命名空间是不是没写对。命名空间是否对的原创 2021-04-13 19:18:29 · 4064 阅读 · 0 评论 -
php 无法获取到header里的Authorization信息
我遇到这个问题的时候,我之前在windows IIS 的时候是正常的,转到Apache以后出问题了。原因:具体原因不清楚啊,希望有大神能给解答一下解决方法:对.htaccess文件进行如下修改:<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{R原创 2021-02-28 04:21:42 · 1979 阅读 · 1 评论 -
阿里云 云虚拟主机 配置 thinkphp5 + vue (.htaccess)
前提是先配制好了前后台分离,跨域问题也已经解决,如果没解决的话,请看我的另外两篇博文:vue 前端 跨域 和 thinkphp5 验证码跨域因为阿里云的虚拟云主机是Linux系统,而且只有一个文件夹是放代码的,所以配置 thinkphp5 + vue 就是配置.htaccess文件,如果对这方面很熟的话,就不用看了,直接去配置就行。记得先将域名解析到虚拟云主机的IP上,然后记得在虚拟云主机里面绑定前后端的域名。方法一: 将 thinkphp 和 vue 分别在htdocs(根目录)目录下建立文件夹放原创 2021-02-26 17:51:14 · 1859 阅读 · 2 评论 -
thinkphp5 项目 windows服务器 转 Linux服务器
将根目录下public文件夹下的index.php文件,放到根目录里面。修改application目录下面的config.php,对应下面的代码进行替换,linux是要把public增加上去的。// linux的// 视图输出字符串内容替换 'view_replace_str' => [ '__ADMIN__' => '/public/static/admin', '__INDEX__' => '/public/static/index',..原创 2021-02-26 16:11:50 · 329 阅读 · 0 评论 -
thinkphp5 验证码跨域/验证失败 问题解决方案
说明:后端:thinkphp5前端:vue我做的是子域名跨域,不是主域名跨域。例如:前端:aa.xxx.com后端:bb.xxx.com如果是主域名跨域,我试过网上的方法,没成功,session获取都是空,所以,如果主域名跨域的话,建议把session保存到数据库或者nosql里面。要不然可以把 验证码 改成用缓存存储的,不用session就可以,这篇帖子有些(点击查看)不过我没有试过,但是觉得理论上是可以的。...原创 2021-02-22 10:03:30 · 2489 阅读 · 0 评论 -
vue 前端 跨域 无法获取token,但是Response Headers里面可以看到token(php设置自定义的header暴露)
vue 前端 无法获取到后端返回的 token ,但是Response Headers里面已经显示token了原创 2021-02-06 15:33:37 · 3765 阅读 · 0 评论 -
thinkPHP5 input name数组/接收input数组
ThinkPHP5.0 接收数据是有变量修饰符的,ThinkPHP5.0版本默认的变量修饰符是/s。获取的数据为数组,请一定注意要加上 /a 修饰符才能正确获取到。下面是其他变量修饰符修饰符类型/s字符串类型/d整型类型/b布尔类型/a数组类型/f浮点类型例子:$request = Request::instance();$test= $request->post('test/a');...原创 2021-01-26 18:48:31 · 2017 阅读 · 0 评论 -
PHP判断文件是否为图片的方法
废话不多说,主要是针对于一些更改文件后缀为.jpg等图片的,还有就是改成.php.jpg 等等,下面提供三种方法;方法一(推荐):使用 exif_imagetype 函数,该函数用于判断一个图像的类型。函数读取一个图像的第一个字节并检查其签名,如果发现了恰当的签名则返回一个对应的常量,否则返回 FALSE。返回值和 getimagesize() 返回的数组中的索引 2 (方法二的 $info['2'] )的值是一样的,但该函数要快得多。$path = '图片地址';$mimetype = exif_原创 2020-12-26 17:55:01 · 2489 阅读 · 0 评论 -
redis安装 windows IIS 安装 tp5配置引入
Window IIS 安装1. 下载下载地址:https://github.com/tporadowski/redis/releases下载地址,提供多种下载内容:Redis-x64-5.0.10.msi: 在windows下的安装文件,方便简单,直接会将Redis写入windows服务。Redis-x64-5.0.10.zip: 需要解压安装的,接下来讨论的是这种。Source code (zip): 源码的zip压缩版Source code (tar.gz): 源码的tar.gz压缩版原创 2020-12-12 14:52:34 · 481 阅读 · 0 评论 -
tp5 的 application\extra 扩展配置的详细使用方式(thinkphp5)
ThinkPHP5 版本开始增加了扩展配置目录的概念,在应用配置目录或者模块配置目录下面增加extra子目录,下面的配置文件都会自动加载,无需任何配置,这极大的方便了我们进行扩展配置。例如:我们再 application/extra 目录下面创建一个 basic_info.php 文件,内容如下:<?php/** * 网站基本信息文件. * 由Extra_Config函数建立. * 2020/12/05 19:58:05 */return [ 'WEB_TITLE' => 'X原创 2020-12-06 13:49:18 · 1534 阅读 · 0 评论 -
thinkphp5(tp5)无法获取extra的扩展配置文件的数据(获取扩展配置)
在用tp5搭建后台的时候,要自定义一个扩展配置文件来实现后台配置网站信息,例如名称等等。所以使用了扩展配置文件,在application\extra下面放了一个basic_info.php,basic_info.php内容如下<?php/** * 网站基本信息文件. * 由Extra_Config函数建立. * 2020/12/05 19:58:05 */return [ 'WEB_TITLE' => '11', 'WEB_KEYWORD' => '11', 'WEB_原创 2020-12-05 20:54:58 · 1501 阅读 · 0 评论