-
解决 PHP 8.1 隐式类型转换导致缩略图生成错误
这几天解决了一个困扰已久的问题,我的博客系统在文章上传图片生成缩略图时,在本地测试环境没有任何问题,但在服务器环境中总是生成缩略图失败,报错:"Implicit conversion from float"。排查了 PHP 和环境扩展组件库、目录权限、图片格式大小等都没有问题。在百思不得其解时,我注意到了一个平时不太注意的细节,我在本地测试环境用的是 PHP 8.0,服务器上用的是 PHP 8.1,经过反复测试问题果然出在这里。 ......
-
ThinkPHP文件上传类FileSystem自定义生成年月日目录
FileSystem 是一个非常好用的文件上传扩展类,结合 Thinkphp 使用可以轻松的完成文件上传功能的开发。但是默认情况下 FileSystem 是按照“年月日”来生成上传日期目录的,长期使用下来就会有大量的“Ymd”目录,不方便管理,像我平时更新内容不多,如果以“Ym”的格式生成目录,按同一年同一月上传的文件放在一个日期目录中就方便管理多了。 需要......
-
PHP实现多语言支持的方法
在PHP中实现多语言支持的常见方法是使用语言文件和一个语言管理器来处理不同语言的文本翻译。以下是一个简单的多语言示例,使用PHP实现基本的国际化和本地化: 创建语言文件 首先,创建一个目录用于存储语言文件。每种语言都有一个对应的文件,其中包含键值对,用于将文本翻译为该语言。 例如,创建一个 languages 目录,其中包含英语(en.php)和法语(fr.php)的语言文件: en.php: <?php re......
-
PHP使用QR Code生成二维码实例
要在PHP中生成二维码,可以使用第三方库,其中一个流行的是PHP QR Code库。以下是一个简单的示例,演示如何使用PHP QR Code库生成二维码。 使用 Composer 安装 PHP QR Code: composer require chillerlan/php-qrcode PHP 生成二维码示例 <?php // 引入 Composer 的自动加载文件 require_once 'vendor/aut......
-
织梦DedeCMS收费5800元,大批建站公司将受影响
9月26日,一则消息在网站建站行业炸开锅:国内知名开源建站程序织梦内容管理系统(DedeCMS)官方宣布,使用其旗下产品DedeCMS的除个人非盈利用户外,全部需要购买商业授权。也就是说织梦要强制收费了。 作为国内最早也是使用率最高的CMS之一,DedeCMS是许多站长入行之初的启蒙者,在那个个人站长的红利期,很多站长最初都是选择了织梦作为自己网站的程序。这是因为DedeCMS简单易用,功能强大,并且开源免费,一度占有非常......
-
PHP实现相关文章推荐功能
实现相关文章推荐功能通常需要使用更高级的推荐系统算法,对于查询到的相关文章,需要计算它们与当前文章的相似度。相似度可以根据文章的内容、标题、标签等属性进行计算。可以使用文本相似度算法(如余弦相似度、Jaccard相似度等)或基于内容的推荐算法来计算相似度。 假设有一个包含文章信息的数据库表 articles: CREATE TABLE articles ( id INT PRIMARY KEY, title VA......
-
PHP防止短时间内刷阅读量的方法
防止短时间内刷阅读量是一个常见的需求,通常需要使用一些技术手段来检测和限制恶意访问。以下是一些可能的方法: 使用 Cookie 或 Session: 通过在用户访问时设置一个 Cookie 或 Session 记录,记录用户最后一次访问的时间戳。在下一次访问时,可以检查当前时间与上次访问的时间戳之间的差异,如果差异太小,则可能是刷阅读量的行为。 session_start(); $currentTime = time();......
-
PHP生成任意尺寸并居中裁剪缩略图的函数
在项目中经常需要对图片进行各种处理,比如生成缩略图,并且生成的缩略图还要保持原有图片的宽高比例不变形,下面就分享一个非常好用的PHP生成缩略图函数,可以手动输入自定义尺寸并居中裁剪保持图片比例不变形,代码如下: <?php // 应用公共文件 /** * 居中裁剪图片 * @param string $source [原图路径] * @param int $width [设置宽度] * @param int $heig......
-
PHP开发的文字水印,缩略图,图片水印实现类与用法示例
本文实例讲述了PHP开发的文字水印,缩略图,图片水印实现类与用法。分享给大家供大家参考,具体如下: 1.实现类ImageToTest.class.php参考代码 class ImageToTest { /** * 图片的基本信息 */ private $info; private $image; public function __construct($src){ $info = getima......
-
Mysql中utf8和utf8mb4区别
一、简介 MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。好在utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。当然,为了节省空间,一般情况下使用utf8也就够了。 二、内容描述 那上面说了既然utf8能够存下大部分中文汉字,那为什么还要使用utf8mb4呢?原来mysql支持的utf8编码最大......