PHP
H_36627117
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
php 数据安全性(过滤提交的数据)
form表单数据的提交有很大方面的安全性的机制,或者通过地址方式进行提交数据也是如此。所以要把数据保存到数据库,为了安全考虑,就要对保存到数据库的数据进行过滤,从而提高安全效果,数据保存到数据库也就得到了保障,所以要对提交的数据进行过滤,php过滤提交方法如下:function db_prepare_input($string){ if (is_string($string)) { return trim(sanitize_string(stripslashes(...原创 2021-07-28 16:38:59 · 356 阅读 · 0 评论 -
正则匹配图片路径
//获取并处理图片$preg = '/<img.*?src=[\"|\']?(.*?)[\"|\']?\s.*?>/i';preg_match_all($preg, $imageList[$_key]['image'], $matches)原创 2021-05-17 17:10:37 · 486 阅读 · 0 评论 -
php gd库处理base64图片
方法:if (preg_match('/^(data:image\/(\w+);base64,)/', $picture, $result)) { $type = $result[2]; $newFile = 'uploads/'. time() . '.' . $type; if (file_put_contents($newFile, base64_decode(str_ireplace($result[1], '', $picture)))) {原创 2021-03-30 17:18:01 · 772 阅读 · 1 评论 -
根据指定的url地址获取其url路径
通过前端访问后台执行操作,如 $.ajax,$.post,$.get等等所有包含url: "地址"属性都可以调用该方法,方法如下:前端通过$.post进行调用后台操作:<script>$(function(){$.post( '<?php echo $this->getUrl('index/index/loginPost'); ?>', $('#loginFm').serialize(), function(result){ if..原创 2020-11-29 16:05:05 · 1020 阅读 · 2 评论 -
PHP 删除指定文件夹下的所有文件(3)
删除指定文件夹下的所有文件:function rm_dir($path, $pathSelf = false){ if (empty($path) || !is_dir($path)) die('目录不存在或不是目录'); $path = $path . '/'; $dirFile = scandir($path); //查看目录下的文件 if (!empty($dirFile) && is_array($dirFile)) {原创 2020-11-26 15:11:31 · 333 阅读 · 0 评论 -
php 验证码 (2)
验证码的使用场景:用户登录/注册页面 (常见)验证码的实现步骤:(1)创建一个图像资源 (2)给图像资源分配颜色 (3)填充颜色 (4)绘制元素并填充 (5)生成并保存图像 (6...原创 2020-11-25 21:00:43 · 224 阅读 · 0 评论 -
php 获取指定文件夹下的所有文件(2)
获取指定文件夹下的所有文件,可以通过遍历去获取。function open_dir($path){ if (!is_dir($path) || empty($path)) die("该" . $path . "不是目录"); $path = $path . '/'; $fileList = []; $dirFile = scandir($path); if (!empty($dirFile) && is_array($dirFi原创 2020-11-25 20:35:47 · 713 阅读 · 0 评论 -
gd库 图像处理(imagecopy, imagecopyresampled, imagecopysized)函数所谓的用法
说说这三个函数吧,这三个函数都有一个共同点,那就是可以拷贝图像资源。但它们三个用起来的本质就有所区别,imagecopy()拷贝图像资源的一部分,imagecopyresampled()重采样拷贝部分图像并调整大小,imagecopyresized拷贝部分图像并调整大小。对图片处理相对来说应用的比较多,下面来看看它们的用法。1、imagecopy()参数:imagecopy($dst_img, $src_img, $dst_x, $dst_y, $src_x, $src_y, $src_w,...原创 2020-11-19 15:23:33 · 1193 阅读 · 0 评论 -
php 图片翻转
图片可以进行多个角度的旋转,根据自己的定义需求进行旋转,而翻转有两种方式左右翻转(以Y轴),上下翻转(以X轴),不能根据角度去定义,刚做这个功能的时候以为翻转就是旋转,然而不是的。图片以Y轴翻转(左右翻转):function trun_y($filename){ $back = imagecreatefromjpeg($filename); list($width, $height) = getimagesize($filename); //创建一个新的图片资源,用来保原创 2020-11-17 19:04:18 · 556 阅读 · 0 评论 -
不指定比例大小的情况下,图片如何自动变成比例为1:1的大小?
之前因为处理图片的比例甚是烦恼,知道使用gd库来处理图片,于是百度了关于处理图片比例缩放的问题,虽然找到了很多,但是都是关于缩放为指定大小比例的一些实例,可以成功进行比例缩放,也达到了预期的需求,下面的代码是我第一次整理时的,不过还是有些问题。如:function image_thumb($src_file, $des_w, $des_h) { list($width, $height, $imgTypeNumber) = getimagesize($src_file); //处理原创 2020-11-17 15:32:46 · 3664 阅读 · 0 评论 -
深入PHP内核
最近,和一个网友交流的时候,给我提了一个非常奇怪的问题。那就是,在一个运算中,加了一个引用之后,发现性能慢了一万倍。在我的脑海里面,引用是一个非常容易出错的问题,特别是PHP里面的引用,有非常多的陷阱。因为,以前专门研究过这一块PHP的源代码,所以,我可以比较清晰的解析引用到底是怎么一回事,希望,读了我这篇博客的PHP开发者,能彻底理解这个问题。如果,有任何疑问,或者有一些你想了解的问题,可以给我留言。先来看一段代码:class RefferTest{ private $data;原创 2020-09-17 16:16:22 · 416 阅读 · 0 评论 -
高效解决PHP+MYSQL出现乱码的方法
在使用PHP+MYSQL时,您是否遇到过字符乱码的问题呢?您是如何解决这个问题的呢?这里提供了一种解决之道。使用PHP+MYSQL时遇到过字符乱问题,解决方法: 在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET NAMES GBK,代码如下: $mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass); 2 mysql_query原创 2020-09-17 16:11:20 · 165 阅读 · 0 评论 -
php中的SQL注入式漏洞
SQL注入式漏洞是许多PHP程序的主要安全危害,产生的原因是在向数据库执行插入等语句时,web开发者允许最终用户操作变量(例如根据表单提交内容显示相应信息),通常是_GET、_POST或_SESSION等全局变量。让我们看以下的代码:<?phpquery="Selectnews_title,news_text";query.="FROMnews";query.="Wherenews_id="._GET['id'];mysql_query(quer...原创 2020-09-17 16:09:23 · 613 阅读 · 0 评论 -
PHP Rewrite (重写)
要开启php的重写功能,需要在php配置文件php.ini里面进行修改。启用rewrite# LoadModule rewrite_module modules/mod_rewrite.so去除前面的 #LoadModule rewrite_module modules/mod_rewrite.so启用.htaccessAllowOverride None 修改为: AllowOverride All<Directory />Options FollowSymL.原创 2020-09-17 16:02:45 · 1210 阅读 · 1 评论 -
php中处理字符串的灵魂函数 (字符串函数)
1、查找字符位置函数:strpos($str,search,[int]):查找search在$str中的第一次位置从int开始;stripos($str,search,[int]):函数返回字符串在另一个字符串中第一次出现的位置。该函数对大小写不敏感strrpos($str,search,[int]):查找search在$str中的最后一次出现的位置从int2、提取子字符函数(双字节)submit($str,int start[,int length]):从$str中strat位置开始提取[le原创 2020-09-17 15:56:28 · 190 阅读 · 0 评论 -
windows 下部署 php+nignx 环境
刚看到nginx这个词,我很好奇它的读法(engine x),我的直译是“引擎x”,一般引“擎代”表了性能,而“x”大多出现是表示“xtras(额外的效果)”,那么整个词的意思就是类似“极致效果”,“额外性能”。当然这里不是要来唠嗑,以上是题外话。 nginx相较于我们熟悉的apache、IIS的优势,就我浅入浅出的了解,在于“反向代理”和“负载均衡”。因此考虑到能够为Web服务器节省资源,它可以代替apache来提供Web服务。那么上正题了,nginx有这么多优势,那在windows下如何来配置ng原创 2020-09-17 15:52:29 · 409 阅读 · 0 评论 -
来看看session_unset与session_destroy的区别到底是啥
来探讨下php session_unset与session_destroy的区别吧关于session_unset()和session_destroy()的函数使用进行介绍。1、session_unset()释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的sessionid2、session_destroy()删除当前用户对应的session文件以及释放sessionid,内存中的$_SESSION变量内容依然保留因此,释放用户的se原创 2020-09-17 15:44:44 · 228 阅读 · 0 评论 -
++ 与 -- 运算符详解篇
首先了解下什么是运算符,都有哪些运算符。实际当中大家常见到的可能是算术运算符和比较运算符,适用于各种运算场景,是不是很常见呢。今天要说的就是算术运算符中的 ++和 --,分别有什么作用呢。其实 ++相当于 +( 加法),--相当于 - (减法),在语言版本当中就被叫做自增和自减运算符。1、优先级不管在什么语言中,运算符都有优先级,那么自增和自减运算符处于什么级别呢,它们处于第三级当中,优先级决定了运算的结合方向,从而先运算哪个部分,再运算哪个部分,运算符优先级一览表:优先级 结合方...原创 2020-08-22 16:09:36 · 7943 阅读 · 1 评论 -
PHP 过滤除中英文以外的所有字符
有时要对数据进行处理,知道怎么过滤所有字符吗?只保留中英文,或者英文$str = "Color(50% OFF)????";echo preg_replace("/[^a-zA-Z]/iu",'',$str); //输出ColorOFF上面的是保留英文,下面则是保留中英文$str = "Color(50% OFF)????汉化版";echo preg_replace("/[^\x{4e00}-\x{9fa5}a-zA-Z]/iu",'',$str);输出:ColorOFF汉化版原创 2020-08-12 11:31:05 · 1065 阅读 · 0 评论 -
PHP 初学者入门需掌握的知识点,解决问题游刃有余
常用的函数方法地址 https://www.jb51.net/article/12690_all.htm字符串函数一般我们在字符串(地址、文件路径、图片路径)中去查找某个字符或者符号,返回所在的位置,通过几个函数去查找,限定字符串1、strstr 语法:strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] ) 返回 needle 在 haystack 中第一次出现的位...原创 2020-08-10 10:41:42 · 579 阅读 · 0 评论 -
php 实现图片的等比例缩放
新建index.php,然后指定文件图片名称<?php//图片文件名$filename = "images/51iVPV9tuL._AC_-1-450x450.jpg";$type = array('jpg','jpeg','png','gif','bmp');$imgType = explode('.', $filename);$per = 0.8;list($width, $height) = getimagesize($filename);$n_w = $width *原创 2020-07-29 16:50:13 · 578 阅读 · 0 评论 -
php 获取指定文件夹内的所有图片(1)
php获取文件夹内的所有图片,直接遍历//获取文件夹下的所有文件$dir_str = '文件路径';$i = 0;$handle = opendir("./" . $dir_str); //指定目录while (false!== ($file = readdir($handle))) { //遍历改文件所在的目录 list($filename , $kzm) = explode('.', $file); //获取扩展名 if ( in_array($kzm, $imgTyp.原创 2020-07-29 16:15:16 · 1639 阅读 · 0 评论 -
php 验证码功能的实现(1)
生成验证码代码如下:public function captcha(){ //初始化 $border = 1; $how = 4; $w = 117; $h = 42; $y = 29; $fontsize = 18; $alpha = "abcdefghjkmnpqrstuvwxyz"; $number = "23456789";原创 2020-07-16 09:48:48 · 409 阅读 · 0 评论 -
php获取文件后缀的9种方法
介绍下获取扩展名的九种方法//第一种function get_extension($file){ $file = explode('.', $file); return end($file);}//第二种function get_extension($file){ return substr(strrchr($file, '.'), 1);} //第三种 function get_extension($file){ return pathinf..原创 2020-07-11 17:02:17 · 275 阅读 · 0 评论 -
implode 与 explode 区别
implode是把数组根据分隔符拆分合成一个字符串。implode(";", $arr);explode是把一个字符串根据分隔符打散并合成一个数组。explode(";", $arr);原创 2020-07-06 14:16:32 · 1930 阅读 · 0 评论 -
array_map() 的使用
讲个 PHP 的骚操作。论如何实现:把二维数组内某二维元素的值,单独提出来组成一维数组。(注)1、传统操作 $pieces = [];foreach($whole as $item){ $pieces[] = $item['foo'];}return $pieces; 2、骚操作 return array_map( function ($item) { return $item['foo']; }, $whole);原创 2020-07-06 14:02:38 · 1131 阅读 · 0 评论 -
php 几种常用的输出方式,输出字符串以及变量
1、echoecho是php中常用的输出语句关键字,它是语言结构,不是函数,它没有返回值,可以一次输出一个或者多个值,echo比print的输出速度要快一些。使用echo输出字符串时,需要注意单引号和双引号的使用,如echo " hello world!"; //输出hello world!echo 'hello world'; //输出hello world$str = "hello world";echo "$str welcome";...原创 2020-06-22 15:16:03 · 6013 阅读 · 0 评论 -
在高并发下,php结合redis实现的抢购、秒杀功能
抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少("超卖"问题)对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。重点在于第二个问题常规写法:查询出对应商品的库存,看是否大于0,然后执行生成订单等操作,但是在判断库存是否大于0处,如果在高并发下就会有问题,导致库存量出现负数<?php$conn=mysqli_connect("localhost","root...转载 2020-06-11 11:42:44 · 206 阅读 · 0 评论 -
PHP导出商品规格属性至Excel进行分组,根据商品属性值id进行分组
输出商品规格属性至Excel,属性不明确的情况下,可以通过商品规格值(如尺寸,颜色),例如S码灰蓝,L码灰蓝色,XL灰蓝等匹配方式,根据商品id,对product_attribute(商品属性),product_option(商品选项),product_option_value(商品选项值)三张表查询,查询出商品选项值id(product_option_value_id),将id放到一个数...原创 2020-04-30 14:46:25 · 887 阅读 · 0 评论
分享