
PHP
沐月浅歌
这个作者很懒,什么都没留下…
展开
-
left join关联查询一对多数据重复问题解决方案
关联查询一对多问题,GROUP_CONCAT原创 2023-01-13 16:29:34 · 4273 阅读 · 0 评论 -
mysql 一对多查询 合并为一行数据
mysql 一对多查询 合并为一行数据原创 2022-11-23 18:04:08 · 2051 阅读 · 0 评论 -
用array_filter清除数组中的空值
用array_filter清除数组中的空值原创 2022-11-23 14:21:40 · 654 阅读 · 0 评论 -
Yii post()追加数据,模块之间的调用runAction
Yii原创 2022-07-21 11:25:28 · 519 阅读 · 1 评论 -
打印sql
sql打印原创 2022-07-15 15:31:07 · 970 阅读 · 0 评论 -
PHP中array_unique()函数产生的Array to String conversation警告
array_unique()函数原型为array_unique ( array $array , int $sort_flags = SORT_STRING ) : array1注意到:可选参数sort_flags的默认值为SORT_STRING,意为将数组中的元素按照字符串进行排序。所以此处有一个字符串转换,但数组中的元素仍为数组(即多维数组)时,若不改变sort_flags参数则会造成Array to String conversation错误。将sort_flags参数修改为SORT_.转载 2022-03-03 10:05:02 · 489 阅读 · 0 评论 -
Yii2 获取当前请求的路由信息
Yii::$app->controller->route;Yii::$app->requestedRoute;原创 2021-11-29 18:26:39 · 883 阅读 · 0 评论 -
empty调用数组中不存在的键名与 空数组循环问题
1、设置一个数组empty()函数调用数组中不存在的键时,返回值为true2、循环空数组,循环中的代码不执行原创 2021-11-19 15:12:01 · 263 阅读 · 0 评论 -
PHP递归函数return返回null的问题
public function getNumber($number,$num='1'){ //后面三位流水改成按照顺序生成 $num=str_pad($num,3,"0",STR_PAD_LEFT); $instrument_number = $number. $num; //查询是否被占用 $meterInfo = Meter::find()->where(['is_delete' => 0,'instrument_number' => $ins.原创 2021-08-05 13:44:20 · 694 阅读 · 0 评论 -
文章记录地址
Laravel 服务容器、服务提供器、契约实例讲解 https://learnku.com/articles/17638#0695ff原创 2021-03-30 15:35:43 · 78 阅读 · 0 评论 -
简单实现获取上午下午晚上状态类
<?php class MyGreeter{ public static $instance = null; public function __construct() { $this->getGreeting(); } public static function getInstance() { if (is_null(self::$instance)) { self::$i...原创 2021-03-29 11:42:48 · 117 阅读 · 0 评论 -
字符串、数字、布尔值比较
字符串和数字比较,字符串转数字 var_dump('{'==0); //truevar_dump('{'==1);//false数字和布尔型比较转布尔型var_dump(true==0); //falsevar_dump(false==0); //true字符串和布尔型比较 转布尔型var_dump('{'==true); //truevar_dump(''==true); //false...原创 2021-03-24 15:38:03 · 545 阅读 · 0 评论 -
laravel获取请求路径或url
$path = $request->path();返回请求的路径信息$url = $request->url();// 不包含查询字符串$url_with_query = $request->fullUrl();// 包含查询字符串返回结果is方法允许你验证请求路径是否与给定模式匹配。该方法参数支持*通配符:if($request->is('judgement/judge/*')){ echo true;}//获取请求方式$meth...原创 2021-03-24 10:17:54 · 2460 阅读 · 0 评论 -
PHP常用函数
https://www.cnblogs.com/qczy/p/11074796.html转载 2021-03-09 19:49:15 · 76 阅读 · 0 评论 -
laravel可选参数模糊查询
Template::when($varable,function ($query) use ($varable){ if(!empty($varable)){ $query->where('varable','like',"%{$varable}%"); } })->orderBy("created_at", "desc")->paginate($page_size);原创 2021-03-04 14:22:31 · 411 阅读 · 1 评论 -
一只母牛,4岁至15岁时可以生母牛,到20岁死亡,N年后会有多少头牛.
//计算牛的数量function cow($num,$y){ for($j=1;$j<$y;$j++){ if($j>=4 && $j<15){ $num++; cow($num,$y-$j); } if($j==20){ $num--; } } return $num;}echo cow(1...原创 2021-02-26 17:58:36 · 330 阅读 · 0 评论 -
PHP打印杨辉三角
//杨辉三角function yanghui($n){ for($i=0;$i<$n;$i++){ $arr[$i][0]=1; $arr[$i][$i]=1; } for($i=2;$i<$n;$i++){ for($j=1;$j<$i;$j++){ $arr[$i][$j]=$arr[$i-1][$i-1]+$arr[$i-1][$j]; } } for(...原创 2021-02-26 17:38:33 · 453 阅读 · 0 评论 -
PHP实现猴子选大王
一群猴子排成一圈,按1,2,...,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去...,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大王。/**获取国王 */function King($arr,$count){ while(count($arr) != 1){//如果数组只剩一个,就是大王,即结果 $length = count($arr);//统计本次循环数组所剩数目 ...原创 2021-02-26 16:41:24 · 554 阅读 · 0 评论 -
Laravel 报错: Dotenv values containing spaces must be surrounded by quotes.
报错信息如下:原因: .env文件配置中包含空格的配置信息,用双引号""引起来即可。我是在配置项后面添加注释前面有空格,换行后显示正常。原创 2021-02-24 18:31:10 · 537 阅读 · 0 评论 -
Method Illuminate\Validation\Validator::validateRequire does not exist
Method Illuminate\Validation\Validator::validateReuqired does not exist.此错误是由于我们在配置验证时,写错了关键字,// 这里应该是required原创 2021-02-24 14:53:09 · 3514 阅读 · 0 评论 -
laravel Add [xxx字段] to fillable property to allow mass assignment on [App\Http\Models\xxx]
以上错误源于laravel Eloquent ORM 模型中fillable 与 guarded属性的设置。解决方法:在对应的model里面添加对应的字段即可$fillable就像是可以被赋值属性的“白名单”,还可以选择使用$guarded。$guarded属性包含你不想被赋值的属性数组。所以不被包含在其中的属性都是可以被赋值的,因此,$guarded方法就像“黑名单”。当然,你只能同时使用其中一个,而不是一起使用。$fillable 和 $guarded 两个属性是用来控制批量赋值的,..原创 2021-02-22 11:35:27 · 12341 阅读 · 0 评论 -
echo intval((0.1+0.7)*10) 结果为7
以十进制能够精确表示的有理数如0.1或0.7,无论有多少尾数都不能被内部所使用的二进制精确表示,因此不能在不丢失一点点精度的情况下转换为二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10)通常会返回7而不是预期中的8,因为该结果内部的表示其实是类似7.9999999999999991118...。不可能精确的用有限位数表达某些十进制分数。例如,十进制的1/3变成了0.333333333...。所以永远不要相信浮点数结果精确到了最后一位,也不要比较...原创 2021-02-20 18:09:27 · 196 阅读 · 0 评论 -
查看Laravel版本号
1.PHP artisan --version2.vim vendor/laravel/framework/src/Illuminate/Foundation/Application.php原创 2021-01-27 11:05:17 · 154 阅读 · 0 评论 -
laravel5 使用try catch
Laravel 5 时代控制器被强制放到了子命名空间下,这样直接就无法调用根命名空间下的 Exception 类了。所以要使用try catch的语法,要么代码在最开头使用use \Exception要么使用catch (\Exception $ex).所以正确使用方式是public function getList(){ try { var_dump("list"); }catch (\Exception $ex) { return $ex.原创 2021-01-26 11:49:14 · 321 阅读 · 0 评论 -
解决:laravel出现Please provide a valid cache path.
访问首页出现如下提示:Please provide a valid cache path.解决方法如下:1、确保storage目录下有如app,framework,views三个目录。2、确保storage/framework目录下也有cache,sessions,views三个目录。缺少以上目录就手动创建,然后访问网站首页试试(可以给缓存目录777权限)。...转载 2021-01-25 16:31:36 · 5042 阅读 · 0 评论 -
PHP从一个标准 url 里取出文件的扩展名
<?php/**从一个标准 url 里取出文件的扩展名* 方法一$arr = array(4) {["scheme"]=> string(4) "http"["host"]=> string(7) "127.0.0.1"["path"]=> string(19) "/202101b/index.html"["query"]=> string(17) "id=h9lhg9&p=6&g=1" }$ext =array(2) { [0]...原创 2021-01-21 15:26:18 · 407 阅读 · 0 评论 -
获取指定数范围内合数列表,合数总和,合数平均值
<?php/*** 获取指定数范围内合数列表,合数总和,合数平均值**/function getAvgCompositeNumber($num){ $sum=0; //初始化总和 $composite=[]; //初始化数组 for ($i = 1; $i <=$num; $i++) { //外层循环所有数 for ($j = 2; $j < $i; $j++) { //内层循环除1和本身的数 if...原创 2021-01-20 18:00:41 · 377 阅读 · 0 评论 -
时间复杂度
时间复杂度是指执行算法所需要的计算工作量;简单来说,时间复杂度指的是语句执行次数。计算时间复杂度的方法:用常数1代替运行时间中的所有加法常数 修改后的运行次数函数中,只保留最高阶项 去除最高阶项的系数实例://时间复杂度O(1)sum = n*(n+1)/2;//时间复杂度O(n)for(int i = 0; i < n; i++){ printf("%d ",i);}//时间复杂度O(n^2)for(int i = 0; i <...转载 2021-01-20 16:47:59 · 114 阅读 · 0 评论 -
PHP的数组+运算符
原理:+运算符把右边的数组附加到左边的数组后面,但是重复的键值不会被覆盖执行代码:<?php$a=[0,1,2,3];$b=[1,2,3,4,5];$a+=$b;echo json_encode($a);?>执行结果:[0,1,2,3,5]原创 2021-01-20 15:49:43 · 642 阅读 · 1 评论 -
PHP关于foreach按引用循环,最后一个值和前一个相同的问题
执行代码:<?php$a=[4,5,6,7];foreach ($a as $k=>&$v){var_dump($a);echo "<br/>";}echo "<br/>";foreach ($a as $k=>$v){ print_r($a); echo "<br/>";}echo "<br/>";print_r($a);执行过程和结果:array(4) { [0]=> ...原创 2021-01-20 15:06:18 · 532 阅读 · 0 评论 -
php 设计模式之抽象工厂模式
抽象工厂模式(Abstact Factory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的时候,可以为此系列的产品族创建一个具体的工厂类。一、意图抽象工厂模式提供一个创建一系统相关或相互依赖对象的接口,而无需指定它们具体的类【GOF95】二、抽象工厂模式结构图三、结合一个简单的例子了解用种蔬菜的例子来说明事实,最初的时候,由于规模小,只种植一种蔬菜,根菜类蔬菜,这个时候由于种植方式比较简单,采用简单工厂模式即可,主要目的是让工人轻松,下达工厂种转载 2021-01-19 17:46:15 · 121 阅读 · 0 评论 -
PHP工厂模式
概念及特点:工厂类是指包含了一个专门用来创建其他对象的方法的类。工厂模式,顾名思义,如同工厂一样,你把原材料放入工厂中,出来的是成品,而你并不需要知道工厂里做了什么,工厂模式主要用于解耦。把对象的创建和使用的过程分开。工厂类根据参数来决定创建出哪一种产品类的实例。提供一个创建对象实例的功能,而无需关心其具体实现,被创建实例的类型可以是接口、抽象类,也可以是具体的类。基本步骤:1、Api: 定义客户所需要的功能接口2、Impl: 具体实现Api的实现类,可能会有多..原创 2021-01-19 17:13:34 · 165 阅读 · 0 评论 -
PHP:二维数组中的某个字段进行排序
PHP:根据二维数组中的某个字段进行排序array_column ( array $input , mixed $column_key [, mixed $index_key = null ] )array_column() 返回input数组中键值为column_key的列, 如果指定了可选参数index_key,那么input数组中的这一列的值将作为返回数组中对应值的键。array_multisort(array1,sorting order,sorting type,array2,array3…原创 2020-08-28 18:20:33 · 617 阅读 · 1 评论