php
opfano_o
这个作者很懒,什么都没留下…
展开
-
phpoffice 编辑excel文档
phpoffice编辑excel文档原创 2022-07-26 17:43:57 · 544 阅读 · 1 评论 -
tp6+think-swoole3 异步任务投递
tp6+think-swoole 异步任务原创 2022-06-08 16:11:00 · 1717 阅读 · 0 评论 -
php 安装php-rdkafka扩展
linux 安装php-rdkafka扩展原创 2022-06-02 18:09:55 · 601 阅读 · 0 评论 -
php+rabbitmq消息延时队列
生产端$connection = new AMQPStreamConnection('192.168.16.111', 5672, 'user', '123456', '/', true); $channel = $connection->channel(); $exchange = 'delayed_exchange_test1'; //交换机类型 $args = new AMQPTable([原创 2022-04-24 16:23:46 · 1519 阅读 · 0 评论 -
phpstorm 组合继承类无法跳转到声明解决
<?phpclass one{ //在使用函数的类中进行注释定义@var /** * @var 类名 */ protect $modle; public function __contruct(){ $this->model = new Two(); } public function one(){ $this->model->two(); //此处点击跳转到...原创 2020-08-27 10:58:21 · 2115 阅读 · 0 评论 -
composer 内存溢出
1.修改php.ini的memory_limit 调大memory_limit=2048M; #数值大小根据提示来设置2.执行composer设置memory_limitphp -d memory_limit=-1 /usr/local/bin/composer 包; # /usr/local/bin/composer为composer路径原创 2020-06-05 16:15:44 · 777 阅读 · 0 评论 -
centos多版本php配置多版本composer
下载composer到对应php安装目录 :/usr/local/php73/binwget https://getcomposer.org/download/1.10.6/composer.phar配置 启用文件vi /usr/local/bin/composer73#!/bin/bashexport PATH=$PATH:/usr/local/php73/bin/php /usr/local/php73/bin/composer.phar $*配置权限chmod +x原创 2020-05-18 11:09:04 · 696 阅读 · 0 评论 -
openssl_encrypt 加密
以指定的方式和 key 加密数据,返回原始或 base64 编码后的字符串。说明 string openssl_encrypt ( string $data , string $method , string $key [, int $options = 0 [, string $iv = "" [, string&$tag = NULL [, string $aad = "" [...转载 2018-10-22 09:36:59 · 5641 阅读 · 0 评论 -
Thinkphp5 获取器 定义不存在的字段
public function getStatusTextAttr($value,$data) { $status = [-1=>'删除',0=>'禁用',1=>'正常',2=>'待审核']; return $status[$data['status']]; }$data为当前的所有数据数组 获取器只有当获取某个...原创 2018-08-01 16:03:35 · 4484 阅读 · 2 评论 -
phpstorm 2018.2.1 破解和汉化教程
官网下载2018.2.1版本,下载破解包链接:https://pan.baidu.com/s/1V82pvYxhUpvXf6EJ3MoGDg 密码:bk3v安装后,复制破解包的JetbrainsCrack.jar到目录C:\Program Files\JetBrains\PhpStorm 2018.2.1\bin\编辑对应版本的phpstorm64.exe.vmoptions和phps...原创 2018-08-20 14:22:07 · 7458 阅读 · 0 评论 -
thinkphp5 默认分页改为 Layui分页样式
在extend目录下新增layui目录新建Layui.php,内容如下<?phpnamespace layui;use think\Paginator;class Layui extends Paginator{ protected $uri; /** * 上一页按钮 * @param string $text * @r...原创 2018-08-08 09:43:18 · 3867 阅读 · 4 评论 -
巧用array_map()和array_reduce()替代foreach循环
1、array_reduce( $arr , callable $callback ) 使用回调函数迭代地将数组简化为单一的值。其中$arr 为输入数组,$callback($result , $value)接受两个参数,$result为上一次迭代产生的值,$value是当前迭代的值。使用array_reduce()替代foreach()循环最常用的一个业务场景也许就是数组求和,比如:...转载 2018-07-31 14:21:55 · 3399 阅读 · 0 评论 -
php 把数据写入文件中
** * 写结果缓存文件 * * @params string $cache_name 文件名称 * @params string $caches 缓存数据 * * @return */function write_static_cache($cache_name, $caches){ $cache_file_path = ROOT_PATH . '/...原创 2018-07-24 14:40:58 · 2672 阅读 · 0 评论 -
php curl获取数据
function get_data($url,$post_data,$auth){ //设置header头部信息 $header = array(); //http基本认证 //$header[] = ("Authorization:$auth"); $curl = curl_init(); //初始化 curl_setopt($curl,CU...原创 2018-07-24 14:37:51 · 974 阅读 · 0 评论 -
php中property_exists方法的理解
property_exists 方法的实验 bool property_exists ( mixed $class , string $property )该方法是(PHP 5 >= 5.1.0, PHP 7) 的 新方法,主要作用是判断类或对象中的属性是否存在(可以无视属性权限),返回值是bool变量,存在是为true,不存在是false。其中$class 可是字符串或类。$p...转载 2018-10-31 13:51:04 · 2104 阅读 · 0 评论 -
array_column — 返回数组中指定的一列
说明 array array_column ( array $input , mixed $column_key [, mixed $index_key = null ] )array_column() 返回input数组中键值为column_key的列, 如果指定了可选参数index_key,那么input数组中的这一列的值将作为返回数组中对应值的键。参数 input需要取出...原创 2018-10-24 16:40:51 · 1884 阅读 · 0 评论 -
php 常见错误提示
Php常见错误提示一、Fatal error: Call to undefined function……函数不存在,可能的原因:1、系统不存在这个函数且你也没自定义2、有人会问,我在别的机器上就不报错。那是因为环境不同,这个函数在本机没开,怎么开?你百度函数名字,就能查到这个函数属于哪个dll,去php.ini里开启二、syntax erro转载 2018-01-12 17:36:32 · 2271 阅读 · 0 评论 -
Thinkphp5 查询字段不为空 数组写法
$filter['field'] = ['neq','not null']; //不为空$filter['field'] = null; //null或者$filter[''] = [Db::raw('field IS NULL')]$filter[''] = [Db::raw('field IS NOT NULL')]原创 2019-08-13 15:18:24 · 8216 阅读 · 0 评论 -
用include()和ob_get_contents( )方法 生成静态文件
1. 生成静态文件可以在打开缓冲区的前提下,用include()方法去包含要执行的动态文件,这样该动态文件就会在缓冲区中执行,执行完毕后的静态HTML代码就保存在缓冲区中,然后用ob_get_contents()方法去获取缓冲区中的内容,(注意:在获取缓冲区内容的前提是一定要打开缓冲区ob_start();),将这些内容保存到一个字符串中,再将该字符串写入到文件中即可。<?php h...转载 2018-12-04 09:10:34 · 476 阅读 · 0 评论 -
php str_replace 替换多个
str_replace(['a','b','c'],'a',$str);//a或b或c都替换成astr_replace(['a','b','c'],['d','e','f'],$str);//a->d b->e c->fstr_replace('_', '|', 'user_order_list'); // user|order|list转载 2018-12-04 09:07:08 · 5892 阅读 · 0 评论 -
php 正则获取括号内的内容
$arr = [];$preg = '/(?<={)[^}]+/';$str = 我是帅哥{yes},我是大帅哥{big}{boy};preg_match_all($preg,$str,$arr);原创 2018-12-03 10:37:26 · 6770 阅读 · 3 评论 -
php 按位运算和求余运算(判断奇偶数)
<?php//按位运算:与1按位运算等于0,输出偶数。如果等于1,输出奇数//输出偶数:for($i=0;$i<10;$i++){ if(($i & 1)==0){ echo $i;//输出:02468 };}//输出奇数:for($i=0;$i<10;$i++){ if(($i & 1)==0){ ...转载 2018-11-29 14:27:28 · 1100 阅读 · 0 评论 -
二维数组根据字段排序
平时简单的一维数组或者简单的数组排序这里就不多作介绍,这里主要是针对平时做项目中的可能遇到的情况,根据多维数组中的其中一个排序。用到的php函数是:array_multisort.思路:获取其中你需要排序的字段,作为一维数组arr1,后边会用来排序多维数组data.这里主要以二维数组为例,多维数组也是同样的思路。 $data = array( array('price' =&...转载 2018-11-16 09:47:41 · 456 阅读 · 0 评论 -
mysql SELECT list is not in GROUP BY clause and contains nonaggregated column
安装了mysql5.7,用group by 查询时抛出如下异常:Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'userinfo.t_long.user_name' which is not functionally dependent on columns i...转载 2018-11-05 08:46:29 · 699 阅读 · 0 评论 -
ThinkPHP5 隐藏关联属性字段 hidden
$user = User::get(1,'profile');// 隐藏profile关联属性的email属性dump($user->hidden(['profile'=>['email']])->toArray());// 或者使用dump($user->hidden(['profile.email'])->toArray());PS:hidden只支持单一...原创 2018-06-28 16:09:07 · 6309 阅读 · 0 评论 -
ThinkPHP 开启xdebug后dump 多维数组显示不完整
在php.ini里的 xdebug 节点中,加入如下xdebug.var_display_max_children=128 #子级节点最多显示的的字符数xdebug.var_display_max_data=512 #最多显示的字符数量xdebug.var_display_max_depth=5 #最多显示的层级然后重启PHP服务即可。...原创 2018-06-28 10:11:59 · 1109 阅读 · 0 评论 -
thinkphp5数据库操作方法小结
一.TP5数据库操作方法 1.name()方法 作用 : 指定默认的数据表名(不含前缀) 示例 : Db::name('weiba_post'); 返回 : Db对象 2.setTable()方法 作用 : 指定默认数据表名(含前缀) 示例 : Db::setTab转载 2018-02-06 17:09:41 · 497 阅读 · 0 评论 -
ThinkPHP5 通用验证器
<?php namespace app\common\validate;/** * ============================================================================ * 通用验证器 */use think\Validate;use think\Exception;class BaseValidate exten转载 2018-02-06 10:24:15 · 1374 阅读 · 0 评论 -
php 分页
使用方法 <?phpinclude 'page.class.php';$object = new page(100,20);$object->param=['title'=>'测试','name'=>'刘中胜'];$data = $object -> setPage(); 代码示例<?phpclass page{ //总数据条数 private $count转载 2018-02-01 10:21:47 · 188 阅读 · 0 评论 -
mt_rand() 生成随机整数
mt_rand() 函数使用 Mersenne Twister 算法生成随机整数。提示:该函数是产生随机值的更好选择,返回结果的速度是 rand() 函数的 4 倍。提示:如果您想要一个介于 10 和 100 之间(包括 10 和 100)的随机整数,请使用 mt_rand (10,100)。转载 2018-01-16 09:23:23 · 2627 阅读 · 0 评论 -
php正则
想必很多人都对正则表达式都头疼,为了让跟多的新人方便的读懂,特写此文!1、^ 和 $ ,分别用来匹配字符串的开始和结束,举例说明如下:“^abc$”:就是要求以abc开头和以abc结尾的字符串,实际上是只有abc匹配;2、‘*’ ‘+’ 和 ‘?’他们用来表示一个字符可以出现的次数或者顺序,他们分别表示:“zero or more”相当于{0,},“ab转载 2018-01-12 17:27:06 · 133 阅读 · 0 评论 -
PHPExcel 使用方法
下面是总结的几个使用方法include 'PHPExcel.php';include 'PHPExcel/Writer/Excel2007.php';//或者include 'PHPExcel/Writer/Excel5.php'; 用于输出.xls的创建一个excel$objPHPExcel = new PHPExcel();保存excel—2007格式$objWri转载 2018-01-12 17:07:39 · 908 阅读 · 0 评论 -
中英文字符串截取
/**Utf-8、gb2312都支持的汉字截取函数*cut_str(字符串, 截取长度, 开始长度, 编码);*编码默认为 utf-8*开始长度默认为 0*未尾跟的字符 ...*/ function cut_string($string, $sublen, $start = 0, $s = '...', $code = 'UTF-8'){ if($code ==转载 2017-12-27 11:53:12 · 469 阅读 · 0 评论 -
sprintf() 格式化数字,小数位数,四舍五入
<?php //生成4位数,不足前面补0 $var=sprintf("%04d", 2); echo $var;//结果为0002 echo date('Y_m_d', time()).'_'.sprintf('d', rand(0,99));?> sprintf()函数原创 2017-12-15 11:32:56 · 20617 阅读 · 0 评论 -
php 对象转数组
1.function objectToArray ($object) {if(!is_object($object) && !is_array($object)) { return $object; } return array_map('objectToArray', (array) $object); } 2. json_decode(json_en原创 2017-12-11 10:37:55 · 3308 阅读 · 0 评论 -
php dirname配合__FILE__ 和SCRIPT_FILENAME获取文件目录
php dirname()函数获取给定文件路径中的目录部分,而$_SERVER['SCRIPT_FILENAME']全局预定义变量用于获取当前执行脚本的完整路径,因此我们如果要获取当前执行脚本的目录可以使用dirname()函数和$_SERVER['SCRIPT_FILENAME']获取,具体代码如下:<?php $dir = dirname($_SERVER['SCRIPT_FILE...转载 2018-03-07 15:39:28 · 1207 阅读 · 0 评论 -
thinkphp 5 多表查询分页 获取总数
模型内 $search = []; $search['b.status'] = ['neq',-1]; if(!empty($data['topic_title']) ){ $search['b.topic_title'] = $data['topic_title']; } $res = sel原创 2018-03-16 10:18:44 · 8254 阅读 · 0 评论 -
centos 7 安装PHP 7.* 步骤
官网下载适合的php版本 http://am1.php.net/get/php-7.1.18.tar.gz/from/this/mirror原创 2018-06-25 15:36:25 · 394 阅读 · 0 评论 -
php 关键词搜索结果高亮
一、SQL语句中的模糊查找 主要通过LIKE(不区分大小写)关键字实现模糊查找。LIKE条件一般用在指定搜索某字段的时候, 通过"%"或者" _" 通配符的作用实现模糊查找功能,通配符可以在字段前面也可以在后面或前后都有。只通过LIKE是无法实现模糊查找的,因此通配符的作用不可忽略。下面是三个实例:搜索以PHP开头:SELECT * FROM table WHERE title LI...转载 2018-05-16 17:57:01 · 1843 阅读 · 0 评论 -
php 数组按中文拼音排序
<?php$str = "我们可以在浏览器中看到,当鼠标移到元素上时,元素开始向右移动,开始比较慢,之后则比较快,移开时按原曲线回到原点。";$len = mb_strlen($str);$sta = [];for($i = 0; $i<$len; $i++){ $tmp = mb_substr($str,$i,1); if($tmp != " "){转载 2018-04-12 11:04:19 · 1259 阅读 · 0 评论