php
s听风忆雪
best QQ2276259727
展开
-
疑似 php is_string() 的坑 is_string() 慢
我最终在不影响项目的情况下 使用了 empty();感觉 255 个字符以下适合使用 is_string。输出一下 判断的数据 发现比较大 成千上万个字符。发现 is_string() 这个函数比较慢。返回的数据可能是字符串 或者是 [];然后再执行的时候就发现程序运行很快了。执行的时候比较慢 耗时特别久。如果太大了 建议换个方法实现。以为是对方的接口比较慢。项目上有一段请求代码。这么判断就很影响效率。原创 2024-06-24 16:39:30 · 121 阅读 · 0 评论 -
12306 火车票价格解析 (PHP 解析)
至此 解析车票 大概逻辑完成。3. 与标准座位比较。原创 2024-06-14 17:32:01 · 570 阅读 · 0 评论 -
青书学堂 看视频 耍课时
( /nynzy/Student/Course/GetStudyRecordAndScore ) 接口地址。2. 把所有的nodeId 保存下来 保存到 old.txt。定时是1小时 1小时过后 把这一个课程的所有 章节就看完了。格式 课程id 与 nodeId 用 | 隔开。3. 然后创建 test.php。注意把 cookie 换成自己的。运行 test.php。1. 获取课程节点id。原创 2024-06-13 18:13:04 · 294 阅读 · 0 评论 -
windows 使用 workerman
简单示例workerman从3.5.3版本开始已经能够同时支持linux系统和windows系统。1、需要PHP>=5.4,并配置好PHP的环境变量。2、Windows版本的Workerman不依赖任何扩展。3、安装使用以及使用限制。4、由于Workerman在Windows下有诸多使用限制,所以正式环境建议用Linux系统,windows系统仅建议用于开发环境。官方文档。原创 2024-05-14 16:53:17 · 628 阅读 · 0 评论 -
vue 请求php接口 header 传自定义参数 提示cors 跨域问题
如果有多个域名 但又不想 配置*号 可以设置个数组 然后判断当前的域名 是不是在数组里 如果在数组里 就把这个域名写到header里。大概意思是请求 header里有个userid字段 后端没有设置header里允许这个字段 所以请求失败。改完之后我的入口文件加了两行代码 可以根据自己的需求去修改。我是加载了 index.php 入口文件里。代替 这样再加什么字段也不用更改了。头里加上 userid就可以了。请求后端地址的时候报。原创 2024-04-22 11:52:08 · 458 阅读 · 0 评论 -
thinkphp 框架封装curl请求
tp6 或者 tp8框架 在框架的app/common.php 文件里加一些方法就可以。在这个文件里加 以下代码 就可以实现基于 curl的请求方法 (在这里增加了两个方法 分别是 get 和 post。查看方法 cmd里输入 php -m。记得要开启 php的curl扩展。使用的时候 在控制器里。原创 2024-04-15 18:46:40 · 614 阅读 · 0 评论 -
ThinkPhp8 框架使用 mysql find_in_set 函数
使用mysql 存储一些标签时 会使用逗号拼接的存储方法 比如 1,2,3,11一般情况下 查询 1 可能会用到 like %1% 但这样查询的不够准确 因为11也会被查询到如果每次都多一个逗号 1,2,3,11, 查询时 like %1,% 这样存储有点不太符合程序设计。原创 2024-04-07 17:12:50 · 612 阅读 · 0 评论 -
linux 系统安装php 8.0.2
linux 安装 php8.0.2原创 2024-03-26 17:16:43 · 614 阅读 · 0 评论 -
php Indirect modification of overloaded element of app\model\RouteDay has no effect
在一些堆栈操作对象时会遇到这个问题。单独输出 $value 是个对象。原创 2024-03-22 15:25:38 · 256 阅读 · 0 评论 -
tp8 mpdf 导出pdf
php 导出pdf mpdf 文档里有很多东西 可以自己去研究。到此 结束 开启你的调试之旅吧。原创 2024-03-18 14:47:57 · 509 阅读 · 0 评论 -
PHP Fatal error: Unparenthesized `a ? b : c ? d : e` is not supported.
PHP Fatal error: Unparenthesized `a ? b : c ? d : e` is not supported. 这个问题是 程序不知道这样写的优先级了 所以才会报错 而报错的提示也把解决方法告诉我们了。这个错误是关于三元运算符的错误 这个错误在php8.0以下的版本好像是没问题呢。就是加了一对小括号 大家可以直接复制 替换一下 然后保存。然后再运行程序 这个错误就解决了。找到项目的这个文件 第57行。改成下面这样就可以了。原创 2024-01-18 22:45:59 · 1073 阅读 · 0 评论 -
dos命令弹框| php计时置顶弹框
mshta vbscript:msgbox("脚本执行完毕弹框内容",64,"导出数据")(window.close)//mshta 写法支持许多这只是其中一种写法 vbs格式的 支持 js的 ,execute的等原创 2018-04-16 16:19:18 · 1931 阅读 · 2 评论 -
file_get_contents 打开本地文件报错: failed to open stream: No such file or directory
file_get_contents 打开本地文件报错: failed to open stream: No such file or directory原创 2023-02-24 14:25:15 · 6023 阅读 · 0 评论 -
编译安装php扩展
然后把 extension=zlib 加上这个 或者是把前面的“;”去掉 , 保存退出。2. 执行phpize(在扩展目录里 可以写自己电脑里的绝对路径)4. 没问题的话 make 然后 make install。config0.m4 改为 config.m4。6. php -m 查看一下有没有自己的扩展。3. 然后执行 ./configure。运行之后出现下图就说明可以下一步了。1. 切换到要安装的扩展的目录下。运行 make install。5. 然后去更改php.ini。就说明已经安装成功了。原创 2022-11-20 17:15:05 · 1281 阅读 · 0 评论 -
PHP Array to string conversion
当我们做项目时遇到这个错误Array to string conversion原创 2022-08-29 17:29:39 · 4845 阅读 · 0 评论 -
windows 安装rabbitmq | php_amqp.dll Unknown on line 0
1.先安装erlang可以在官网下载:http://www.erlang.org/downloads根据自己的系统位数选择相应应用2. 然后安装rabbitmqhttp://www.erlang.org/downloads3. 安装PHP扩展扩展下载链接http://pecl.php.net/package/amqp/1.9.4/windows拷贝一下...原创 2022-04-13 16:18:07 · 252 阅读 · 0 评论 -
YII2 重写 primaryKey()
// 在model里 写这个方法 public static function primaryKey() { // 返回可以作为主键的列 一列 或 多列 return [ 'user_id', 'created_at', ]; } 如果没有主键 进行修改数据保存时, 或者删除时可能会报does not have a primary key. You should...原创 2022-04-11 16:44:40 · 393 阅读 · 0 评论 -
YII2生成图形验证码 给接口使用
// 使用一下验证码类use yii\captcha\CaptchaAction;...... // 定义一个方法 public function actionCaptcha() { // 实例化 传入控制器id, controller $obj = new CaptchaAction(\Yii::$app->controller->id,\Yii::$app->controller); // 自定义配置 ..原创 2022-03-31 10:33:07 · 754 阅读 · 0 评论 -
Yii2 where里不转义某个字段方法|复杂条件拼接
$query = $table::find() ->select('id') ->where([ 'and', [ 'or', ['time_type' => 1], [ 'and', [ ...原创 2022-03-11 18:16:46 · 422 阅读 · 0 评论 -
PHP匹配括号
$str = '{(()[(大师傅())[]222]123)}(){}';// $str = '';preg_match_all('/([\(,\),\[,\],\{,\},]*)/', $str, $match);$str = implode('', $match[0]);$num = strlen($str);if ($num % 2 != 0) { echo '不匹配';die;}$kuohao = ['()', '[]', '{}'];while ($i <..原创 2022-02-24 17:31:36 · 164 阅读 · 0 评论 -
YII2查询一列数据
Model::find()->select('distinct(zp_bianhao)')->where([ 'delete' => 0,])->column();Model需要换成自己需要的 model结果原创 2022-02-21 17:36:06 · 1003 阅读 · 0 评论 -
PHP获取字符串中的图片链接
$str = 'background-image:url(http://www.domain.com/adf/ss/aa.jpg), background-image:url(http://www.domain.com/adf/ss/ccjpgaa.jpg) ';// 这里的正则需要注意 可以适当的修改成自己需要的preg_match_all("/background\-image\:url\((.*?\.(?:jpg|gif|png|jpeg))/i",$str, $match);$imag..原创 2022-02-16 15:42:28 · 403 阅读 · 0 评论 -
html带进度条的上传(支持拖拽上传)
这是一个以php作为后台的 文件上传客户端 支持拖拽批量上传原创 2022-01-28 16:39:14 · 1161 阅读 · 0 评论 -
TP6 微信发送模板消息 获取openid 以及签名类
<?phpnamespace utils;// appiddefine('WX_APPID', sysconfig('wechat','web_appid'));// appsecretdefine('WX_APPSECRET', sysconfig('wechat','web_appsecret'));// 微信授权url getdefine('WX_AUTHORIZE_URL', 'https://open.weixin.qq.com/connect/oauth2/author.原创 2021-09-10 16:48:27 · 617 阅读 · 0 评论 -
支付宝退款实现
<?php# 支付宝退款require_once 'D:\\Users\\Desktop\\alipay-sdk-php-all-master\\alipay-sdk-php-all-master\\aop/AopClient.php';require_once 'D:\\Users\\Desktop\\alipay-sdk-php-all-master\\alipay-sdk-php-all-master\\aop/AopCertification.php';require_once 'D.原创 2021-08-10 13:30:25 · 265 阅读 · 0 评论 -
yii2自增自减写法
$status = false; // 自增/自减数量 自减的话写成负数 $editData['quantity'] = new \Yii\db\Expression('`quantity` + 10'); // 普通修改字段 $editData['update_time'] = time(); // 条件 $where = ['id' => $id]; try{ ...原创 2021-06-30 15:09:25 · 939 阅读 · 0 评论 -
vcruntime140.dll不可用或缺少
今天在访问本地域名时发现无法访问此网站192.168.20.117拒绝了我们的连接请求。请试试以下办法:检查网络连接 检查代理服务器和防火墙ERR_CONNECTION_REFUSED出现了这个原创 2021-06-13 11:34:34 · 7475 阅读 · 7 评论 -
php8 unexpected token “match“, expecting identifier
今天把项目(php7.4)拉到自己的电脑上运行本来以为可以好好的敲代码却给我报了一个错误unexpected token "match", expecting identifier意思就是"意外的令牌“匹配”,期望标识符"match在PHP8里是一个函数了 类似switch 有兴趣的可以去搜搜了解了解不能用match作为类型了 或者命名空间 但方法应该还是可以的目前我的做法是趁项目还没上线把match的类全部换成了其他名称如果有更好的方法 麻烦留言告诉我...原创 2021-05-07 22:59:46 · 688 阅读 · 0 评论 -
mysql查询一个表的所有字段和注释
# 表字段=>表注释select CONCAT('\'',column_name,'\' => \'',COLUMN_COMMENT,'\',') from information_schema.COLUMNS where table_name = 'you_table_name';查询出来的数据就是这种格式的'id' => '自增id','name' => '名称',可根据自己的需要自定义concat算是mysql里的字符串拼接...原创 2021-03-29 09:14:26 · 456 阅读 · 0 评论 -
百度地图sql数据
百度地图json数据 树形结构百度地图sql原创 2021-02-23 16:28:33 · 363 阅读 · 0 评论 -
三元运算符 Unparenthesized `a ? b : c ? d : e` is not supported. Use either `(a ? b : c) ? d : e`
Fatal error: Unparenthesized `a ? b : c ? d : e` is not supported. Use either `(a ? b : c) ? d : e` or `a ? b : (c ? d : e)` in D:\WAMP\Apache24\htdocs\index.php on line 5上面是错误的详细信息今天php版本更新到php8之后刚运行时 php报了一个致命的错误 但在php7.2版本是没问题的看这个错误信息应该这种写法有二义性 ..原创 2021-02-09 13:11:51 · 5677 阅读 · 0 评论 -
windows10安装完php8之后apache配置修改后服务启动不了
安装完成php8之后 内心还没来的及激动就去启动了一下apache 结果启动不了 看了下日志说The Apache service named reported the following error:>>> httpd.exe: Syntax error on line 183 of D:/WAMP/Apache24/conf/httpd.conf: Can't locate API module structure `php8_module' in file D:/...原创 2021-02-09 12:08:26 · 1886 阅读 · 8 评论 -
easyadmin 安装时 implode(): Passing glue string after array is deprecated. Swap the parameters
安装一个框架时遇到这个错误了框架官方是这么写的 应该是两个参数位置写反了php文档是这么写的把参数的两个位置换一下就行了原创 2021-01-06 17:48:59 · 4057 阅读 · 0 评论 -
php 获取二级树结构
把$arr = [ [ 'id' => 1, 'pid' => 0 ], [ 'id' => 2, 'pid' => 1 ], [ 'id' => 3, 'pid' => 2 ], [ 'id' => 4, 'pid' => 1 ], [原创 2020-11-05 09:15:28 · 248 阅读 · 0 评论 -
php实现树形结构
/** * 获取树形结构数据 */ public function getTree($data, $pId = 0) { $tree = []; foreach($data as $k => $v) { if($v['pid'] == $pId) { // 子元素放到父级 $v['children']...原创 2020-11-03 13:24:50 · 925 阅读 · 0 评论 -
php 删除文件或文件夹
* @ 符 抑制错误但不能处理错误 只是不抛出 warning/** * 删除文件和文件夹 */function delDir($path = ''){ // 找出目录下的文件或文件夹 $result = @scandir($path); // 当没有数据的时候 return if (empty($result)) { retu...原创 2019-11-05 14:10:45 · 235 阅读 · 0 评论 -
PHP返回上个月所有周开始结束时间结束时间
<?php/** * 返回上个月所有周开始结束时间结束时间(第一周不足7天取从上上个月底的日期) 从周一到周日 * @return array() */function lastMonthWeek($params = array()){ $result = []; $monthDays = 30; // 上个月为2月时做特殊处理 if (dat...原创 2019-10-21 16:37:49 · 368 阅读 · 0 评论 -
PHP生成多个word并打包为zip
记得安装zip扩展哦<?php$data = array( array(1,2,3), array(1,2,13),);// 生成的压缩包位置$filename = "/tmp/wordTest.zip";// 有些框架会报错 记得添上反斜线 标识内置函数$zip = new \ZipArchive();// 打开压缩包$zip->open($f...原创 2019-10-16 17:59:45 · 833 阅读 · 0 评论 -
SSL rtificate problem: unable to get local issuer certificate curl采集https数据采集不到
curl采集https数据采集不到使用curl进行微信支付 支付宝支付等相关安全性较高URL会提示如下错误SSL rtificate problem: unable to get local issuer certificatehttps://download.csdn.net/download/qq_36999656/10341133点击下载然后去 放到一个目录下 例如: "D:\wamp\php\ext\cacert.pem"...原创 2018-04-11 13:29:25 · 316 阅读 · 0 评论 -
Fatal error: Call to undefined function curl_init()
对于此错误首先检查php_curl扩展是否开启 ,extension=curl #注意去掉前面的分号然后检查php\ext下是否有php_curl.dll 文件(默认都有)进入dos界面 php -m (前提是php已经加入环境变量) 查看已安装扩展或者 查看phpinfo() 搜索curl模块 看看是否存在 应该会出4个结果 有标题为 CURL的说明已经安装成功啦检测一下curl模块是否...原创 2018-04-11 13:48:42 · 3258 阅读 · 0 评论