
php相关
php相关
viqecel
这个作者很懒,什么都没留下…
展开
-
网站改版html页面 NGINX 借用伪静态和PHP脚本 实现301重定向跳转
方案三,不管原来的page25.html是纯静态,还是伪静态,对搜索引擎都是无感的.所以.我们假设原来的page25.html就是伪静态的。注意,除了page25需要传递动态参数外,其它页面,直接301永久重定向,所以才用了这个标志:permanent.方案二,在nginx服务器上,所有文章进行伪静态或301跳转.但是测试发现.旧网址中包含动态参数.没法直接跳转.方案一,在新服务器上,建立一个page25.html的静态文件,让他支持PHP脚本,然后在脚本中进行301跳转。改版后,网址随机,比如。原创 2025-04-01 17:38:58 · 271 阅读 · 0 评论 -
纯js仿淘宝多图片封面图插件模板/带视频,带放大镜,带前后端完整代码PHP
功能预览一,前端模板代码 <!--多图功能--> <style>@charset "utf-8";.wrap_imgs img { vertical-align: middle; width: 100%; height: 100%;}.wrap_imgs { position: relative; top: 0px; left: 0px; width: 100%;height:auto; min-height: 410px;}.imgss {原创 2024-05-31 14:23:22 · 697 阅读 · 1 评论 -
PHP 去除数组中元素值的前后空白符换行等
请使用trim()和array_map()函数.原创 2023-12-14 15:03:50 · 560 阅读 · 0 评论 -
百度编辑器 Ueditor 视频上传时 目录创建失败 解决办法
然后找到Uploader.class.php文件最后面的2个地方,即有类似这一句,通过对比发现.只需要把/static/修改为/admin/ 即可.Uploader.class.php文件.大约111左右。然后,进编辑器上传.会提示出一个错误的文件保存路径。找到百度编辑器的上传类。双击复制下来这个路径.原创 2023-09-14 16:14:51 · 802 阅读 · 0 评论 -
原创AJAX + PHP 编辑器内容自动备份草稿保存到本地 (适用ueditor百度编辑器或其它) 内容变化后自动触发备份txt文件
默认备份文件名为小时分钟,比如9月5号13点48分,过了这一分钟后,后端会自动新建一个txt备份,如果一分钟内有多个版本,则替换掉旧的内容.效果图如下:点击查看后,进一个备份列表面.选择版本即可.可以自动删除一周以前的备份.比如第一个文章他自动备份了.等发表第二个文章时,结果把第一个文章的内容自动填充进去了.关键你还不知情!二,本人用ajax写了一个更好用的.特点是,不会自动填充,而是根据时间,选择不同版本,手工复制进去即可.一, 百度原版的 ,具体使用方法,看这里个文章。五,PHP后端代码示例。原创 2023-09-05 16:18:11 · 954 阅读 · 0 评论 -
php页面无法正常显示.原来是在升级到PHP7版本后,定义数组时必须规范
这样是不对的,这是专门用来定义字符串的写法.页面一直提示正在跳转,无法显示页面.逐行删除排查发现.是定义数组时。原创 2022-10-08 13:04:24 · 140 阅读 · 0 评论 -
PHP 动态拼接组合变量名
想动态定义多个变量名称.比如以不同的会员编号为后缀.定义不同的统计count变量名.可以这样写 利用大括号。原创 2022-08-24 18:15:23 · 543 阅读 · 0 评论 -
PHP mb_substr 中文乱码
因为mb_substr()函数在使用时,需要在后面参数中指定编码.不指定.默认把中文当成三个字符.如果指定,则把中文当成一个字符来看待,所以。原创 2022-07-26 14:19:51 · 280 阅读 · 0 评论 -
PHP 防止或检测页面被刷新 post重复提交问题
其实最好的办法是用ajax来提交表单,这样的话,只有点击提交按钮,表单才会提交.也就没必要检测刷新问题了.在解决post重复提交问题时,经过测试.没办法通过php检测是否被刷新.一般是通过js还判断。比如在用户填写收货人的页面,就收集用户的post信息,通过ajax在后台提交订单.代码演示。但都没法禁止post页面被重复提交。......原创 2022-07-18 11:57:07 · 889 阅读 · 0 评论 -
thinkphp 3 增加分词权重搜索功能 phpanalysis插件
一,先在ThinkPHP\Library\Vendor\目录中安装phpanalysis插件 即WordAnalysis目录结构如下二,在搜索控制器中引用插件三,搜索代码示例下面是一个高亮函数,截取内容左右部分内容.来显示原创 2022-07-14 12:03:23 · 686 阅读 · 0 评论 -
mysql 查询时过滤 html
用mysql查数据库字段时.如果字段是text这种大文本格式.里面包括 html标签,比如,center,width等.你在全文搜索center这个关键字时,可能就把标签中包含center的字段也搜索出来的.解决办法之一是.为你的数据库的商品表新建立一个字段比如商品表,content字段是产品介绍,可以再建立一个content_txt字段.里面的内容,是先用php等脚本等方式,进入库之前,把原内容过滤成纯文本后,再保存到content_txt字段时,搜索时,直接搜索content_txt字段即可商品修原创 2022-07-13 15:35:21 · 967 阅读 · 0 评论 -
ThinkPHP3 APP_DEBUG 关闭调试模式出错解决办法
当开启时define('APP_DEBUG',true); // 开启调试模式一切正常.关掉后,即false后,会出现各种错误.有的是因为日志目录写入权限问题.有的是大小写问题查看ThinkPHP\Conf\debug.php 文件或同目录的convention.php 文件 ,你可能会发现一启示debug.php文件内容如下:/** * ThinkPHP 默认的调试模式配置文件 */defined('THINK_PATH') or exit();// 调试模式下面默认设置 可以在应用原创 2022-03-15 16:26:11 · 1388 阅读 · 0 评论 -
php 数组保存到文件的方法 (数组转为字符串)
一般会用到php的序列化函数,转为字符串,保存在文件中.例如file_put_contents('all.txt',serialize($arr));//使用时,再反序列化$str=file_get_contents('all.txt');$arr=unserialize($str);但文件生成以后,不能随便修改 比如一个标题长度为10,如果删除其中一个字符后,则这个文件没法被反序列化了,因为字符删除了.序列化中的字符长度没有同步修改.推荐用另一种方法,用php var_export 函数,原创 2022-01-13 15:13:57 · 365 阅读 · 0 评论 -
php批量遍历读取所有文件夹的名称
<?php$dir='D:/phpstudy_pro/WWW/3';//路径//PHP遍历所有文件夹$handle=opendir($dir.".");//定义数组$array_file = array();while (false !== ($file = readdir($handle))){if ($file != "." && $file != "..") {echo 'http://www.123.c0n/'.$file.'.html <br/>原创 2022-01-04 15:15:48 · 531 阅读 · 0 评论 -
sql like模糊查询,搜索关键字时,增加搜索权重排序及关键字高亮功能(增加带标点空格分词功能)
原网址https://blog.youkuaiyun.com/viqecel/article/details/121352227在此基础上有修改.比如搜索 包含标点的 “硒化 , 锌” 会先分词,再合并.功能简单,实用一是.thinkphp3的分页用了array_splice()模拟分页,因为需要用到多条sql语句合并查询(sql UNION),thinkphp3的合并查询功能不完善,只能写纯粹的sql语句.部分代码示例二,合并查询后,需要对搜索词进行相关性,进行权重打分并排序.// 分页$count =原创 2021-12-01 10:30:06 · 1139 阅读 · 0 评论 -
sql like模糊查询,搜索关键字时,增加搜索权重排序及关键字高亮功能
假如搜索关键字.标题中包含.商品简介中也包含,搜索列表怎么排序呢.当然是把标题中包含关键字的优先排前面.实现方式很简单,以thinkphp3 为例一,搜索控制器代码 function search(){ header("Content-Type:text/html; charset=utf-8"); $ss=$this->ss; $soso=I('soso'); //print_r(1);exit; $this->assi原创 2021-11-16 11:36:14 · 1120 阅读 · 0 评论 -
thinkphp防sql注入,入侵
在index.php入口文件的最上面增加function sql2($value) { //过滤参数 $arr = explode('|', 'UPDATEXML|UPDATE|WHERE|EXEC|INSERT|SELECT|DELETE|COUNT|CHR|MID|MASTER|TRUNCATE|DECLARE|BIND|DROP|CREATE| EXP |EXP%| OR |XOR| LIKE |NOTLIKE|NOT BETWEEN|NOTBETWEEN|BETWEEN|NOTIN原创 2021-09-28 11:58:09 · 913 阅读 · 0 评论 -
php数组,foreach循环合并数组,array_merge()的循环用法
比如我知道了三个一级分类的id,1,2,3$arr1=array(1,2,3);我要循环这三个分类,依次去数据库查询他们各自的子分类.结果是得到三个数组现在想他所有子分类合并在一起.然后,再随机取5个分类.怎么做呢$arr91=[];//先定义数组 foreach($arr1 as => $arr7){ $arr90=xiaji('conttype',$arr7); //用xiaji这个函数,去取一级分类的子分类,所组成的数组 $arr91=array_merg原创 2021-09-18 17:13:38 · 1143 阅读 · 0 评论 -
php数组随机抽取部分元素的另类写法
一般大家都推荐array_rand();但是很可惜.他只是随机取得键名.得不到键值.还要去循环匹配键值.很麻烦用法array_rand(array,number取多少个);我推荐另一种方法,就是先对原数组进行随机排序.然后直接截取.这时就得到完整数组了.包含键名键值.shuffle($arr91);//一维数组$arr92=array_slice($arr91,0,10);//从头部开始.取10条print_r($arr92);exit;...原创 2021-09-18 17:02:26 · 145 阅读 · 0 评论 -
thinkphp整合paypal贝宝支付,及post回调代码
一,先注册商业账号paypal官网www.paypal.com二,接下来我们开始沙箱测试;当账户注册成功以后,paypal会分配给开发者账号两个沙箱测试账号(一个买家账号和一个商家账号)。去paypal开发者账号管理端查看,登录地址:https://developer.paypal.com,用上面刚刚注册的账号密码即可,然后进入后台看到如下界面我画红框的那两个账号就是paypal自动分配给我的,但是这个又是一个坑!!!!!我们可以看到Country的值为C2(代表中国区账号),但是我们千万不要同时拿原创 2021-08-30 15:10:43 · 2016 阅读 · 0 评论 -
百度编辑器UEditor 在线管理 图片按时间排序并显示时间
找到\ueditor\php/action_list.php 这个文件,修改function getfiles()在return $files;的上面增加二句在线管理图片不显示问题.查看这里的说明https://blog.youkuaiyun.com/viqecel/article/details/119214013/** * 遍历获取目录下的指定类型的文件 * @param $path * @param array $files * @return array */function getfiles原创 2021-07-30 15:34:35 · 600 阅读 · 0 评论 -
百度编辑器UEditor 在线管理 图片不显示问题
一,先找到\ueditor\php这个文件夹,找到config.json,配置里面的图片路径,75行左右如果图片路径是按时间归类的.还里设置好后.还需要在php文件中进行替换/* 列出指定目录下的图片 */ "imageManagerActionName": "listimage", /* 执行图片管理的action名称 */ "imageManagerListPath": "/Uploads/Editor/Picture/{yyyy}-{mm}-{dd}/", /* 指定要列出图片的目原创 2021-07-29 16:19:49 · 1639 阅读 · 1 评论 -
用客户的HTTP请求头的加密串来替换cookie,实现免注册跟踪用户访问记录
用客户的HTTP请求头的加密串来替换cookie,实现免注册跟踪用户访问记录1原创 2021-06-18 15:14:24 · 245 阅读 · 1 评论 -
php 动态变量名的用法
<?php$m_type0='H';$i=0;//i是动态变化的一个变量.进而可以生成$m_type0,$m_type1等类似动态变量 switch (${'m_type'.$i}){ case "H": print_r(111);exit; break; case "C": print_r(2...原创 2019-10-23 17:44:13 · 600 阅读 · 0 评论 -
解决微信OAuth2.0网页授权只能设置一个回调域名的问题
get-weixin-code.html下载地址 https://github.com/HADB/GetWeixinCode原创 2017-03-27 12:38:04 · 3664 阅读 · 0 评论 -
wamp多端口多域名虚拟机配置
一,httpd.conf修改监听端口,比如8090Listen 0.0.0.0:8090Listen [::0]:8090二,httpd.conf 中,去掉Include conf/extra/httpd-vhosts.conf前面的注释.三,修改D:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf,注意,不同版本,...原创 2018-12-12 13:52:39 · 350 阅读 · 0 评论 -
php判断时间段
//目的,2019年起,我们商城上面,早上4到8时禁止云购,实现方式date_default_timezone_set("Asia/Shanghai");//规定时区$j=date("H:i");$now=strtotime($j);//获得当前小时和分钟的时间时间戳$start=strtotime('04:00');//获得指定分钟时间戳$end=strtotime('08:00');...原创 2018-12-14 15:13:34 · 716 阅读 · 0 评论 -
Redis在windows 带配置文件启动 ,以环境phpstudy为例
在我win电脑上运行了phpstudy的php运行环境然后,安装redis的服务端及客户的命令操作端1.首先去github网站上下载https://github.com/dmajkic/redis/downloads;2.根据实际情况,比如,将64bit的内容cp到自定义盘符目录,如D:\Redis;3.打开cmd,cd 到d 盘,切换到D:\Redis目录中,因为Redis-server...原创 2018-12-19 22:14:49 · 2411 阅读 · 1 评论 -
Fatal error: Cannot 'break' 2 levels in
phpmyadmin导出时提示这个错误Fatal error: Cannot ‘break’ 2 levels in …在多少行解决办法是,按照错误提示的文件,及所在的行号位置,把break 2; 改为 break;即可原创 2018-12-19 17:19:00 · 2321 阅读 · 0 评论 -
php根据数组键值求键名
$uid=21;//键值为会员id 21 $info=array(0=&gt;20,1=&gt;21,2=&gt;22);//所有会员信息$n=array_keys($info,$uid);//根据键值得键名//$n结果为一个新数组 array(0=&gt;1); ,其中1即为原键名. // $n[0];...原创 2018-11-27 21:07:23 · 2529 阅读 · 0 评论 -
thinkphp 模块不存在,环境为wdcp, nignx
apache上正常解析的基于PATHINFO访问url格式.nignx上就不行.需要修改nginx.conf配置,我的环境是php5.5+php 7.1 及wdcp 3.2/www/wdlinux/nginx/conf/vhost/你的域名.conf不同的环境这里目录可能不同.我的原来是这样的server { listen 80; root /...原创 2019-01-15 17:34:53 · 1022 阅读 · 0 评论 -
php或js取出数字组合中,个数最多或最长的连续数字序列,比如1,2,5,6,7,8,则取出5,6,7,8
比如斗地主扑克牌中,有打连对的牌型. 比如可以出334455,或者 55667788,在玩家点击出牌提示的,我们要给他最长的一个连对提示.这时,就需要把手里的牌型转化为连续的数字编号.首先要先找出所有的对子组合.然后把每个对子对应的唯一编号放在整个数组中.然后再对其按是否连续进行分组.比如3,4一组,5一组,7一组,11,12,13,14为一组.//所有的对子找到后,找出他们对应的数字编号,放数...原创 2019-02-19 15:00:34 · 624 阅读 · 0 评论 -
PHP错误Notice : Use of undefined constant 导致error_log磁盘100%
磁盘及cpu频繁被占满100%,是因为php.ini中的错误级别太低,需要修改.php.ini中搜索error_reporting = ,替换为error_reporting = E_ALL &amp; ~E_NOTICE然后重启或查看/www/wdlinux/httpd-2.2.31/logs/error_log日志,(当然不一定是这个目录或日志.)然后,打开根据里面报名内容.把相应ph...原创 2019-03-03 08:36:00 · 333 阅读 · 0 评论 -
php判断远程文件是否存在
本地与远程文件的判断是不同的 function check_file_exists($file){ // 远程文件 if(strtolower(substr($file, 0, 4))=='http'){ $header = get_headers($file, true); return isset($header[0]) &&am...转载 2019-03-27 14:37:14 · 217 阅读 · 0 评论 -
宝塔nginx配置文件伪静态,隐藏index.php
可以直接修改配置文件,如下图.找到/www/server/panel/vhost/rewrite/你的域名.conf编辑这个文件,里面内容为location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; }}当然,也可以在宝塔后台,网站列表,设置中添加伪静态...原创 2019-05-24 11:57:25 · 8280 阅读 · 0 评论 -
php知道文件路径时,如何打印该php文件中的代码
比如在一个文件中.有这一句include_once $db_Patch.'public/db/mysql.config.php';通过打印知道,$db_Patch的目录中d:/www/所以,文件绝对路径为’d:/www/public/db/mysql.config.php’;然后打印mysql.config.php中的内容,方法为先建立一个php文件, 里面内容为<pre cl...原创 2019-06-15 10:36:23 · 595 阅读 · 0 评论 -
php判断0点到7点凌晨时间段的方法
假设指定时间向数据库随机插入商品的评论语,凌晨时间就跳过,$j=(int)date("H");//获得当前时间的小时9:01,并转为纯数字格式if($j<7){ //如果小于7,说明是凌晨$ARR=array(25200,-25200); //原时间上加7个小时或减少7个小时,从而随机跳过这个时间段 $t5=$t5+$ARR[rand(0,1)];}$t6=date('...原创 2019-09-29 12:29:34 · 1498 阅读 · 0 评论 -
PHP redis 全部命令
phpredis是php的一个扩展,效率是相当高有链表排序功能,对创建内存级的模块业务关系很有用;以下是redis官方提供的命令使用技巧:下载地址如下:https://github.com/owlient/phpredis(支持redis 2.0.4)Redis::__construct构造函数$redis = new Redis();connect, open 链接redis服务参...转载 2018-11-27 15:10:10 · 1150 阅读 · 0 评论 -
php自动匹配图片网址,并自动下载保存本地化或远程上传到其它服务器
在phpwind中.如果直接发表图片网址.会自动转为 以下的标签形式[img]/attachment/img_85186769.jpg[/img]所以.可以通过php正则匹配[img]中的网址,并把图片网址对应的图片,自动保存到本地,然后通过php的ftp_put()函数,远程ftp上传到另一个服务器上.以phpwind4.3.2为例.比如.发文章时,勾选图片本地化后.会自动保存.图片再远程...原创 2018-11-08 11:49:40 · 1310 阅读 · 0 评论 -
PHP中,copy()函数 如何打开https链接
php服务器上,如果fopen() 或copy() 想要打开https网址,PHP 服务器需要支持 OpenSSL才行.具体方法自己搜索解决吧原创 2018-11-07 22:58:23 · 1164 阅读 · 0 评论