首页
VIP观影
美女套图
留言板
好友导航
推荐
影视在线
IDC销售
常用工具
高清壁纸
娱乐直播
Search
1
关于【套图】贡献者说明
6,608 阅读
2
利用CSS改变图片显示风格的方法 filter
3,709 阅读
3
女神朴信惠(๑′ᴗ‵๑)I Lᵒᵛᵉᵧₒᵤ❤
3,042 阅读
4
WJSSK_myfriend 我的好友(导航插件) 相关说明
1,641 阅读
5
随机小姐姐跳舞视频(6362个),源码分享
1,335 阅读
随笔
技术源码
Typecho
php
Vue
微信
资源分享
Happy 分享
好看的电影
好看的电视剧
登录
/
注册
Search
标签搜索
php
IDC
智简魔方
财务系统
主题
vue
Easypanel
centos
typecho
mqtt
宝塔bt
typecho插件
函数
云服务器
Kangle
docker
JavaScript
mosquitto
mosquitto-cluster
mosquitto-auth-plug
登录
Or
注册
累计撰写
128
篇文章
累计收到
415
条评论
首页
栏目
随笔
技术源码
Typecho
php
Vue
微信
资源分享
Happy 分享
好看的电影
好看的电视剧
页面
VIP观影
美女套图
留言板
好友导航
推荐
影视在线
IDC销售
常用工具
高清壁纸
娱乐直播
搜索到
128
篇与
岳小威子
的结果
2022-08-01
cn2和bgp的区别 CN2和BGP哪个快
很多人不清楚CN2线路和BGP的区别是什么?CN2线路和BGP哪个快?其实我也不知道,所以百度找了一下,大概了解一下给大家一个参考什么是BGP线路香港BGP线路实际上解决了不同线路运营商的互联互通问题,不管客户使用的是哪个运营商的线路,访问香港服务器的网络速度都比较快。香港IDC服务商接入了多条线路,即使一条线路出现问题也不影响使用,他会自动切换到其它正常线路上。香港BGP线路的机房也具有很强的拓展性,可以灵活的接入多条线路。如果自己有IP地址和AS号也可以直接在机房做BGP广播,实现单IP多线路访问。什么是CN2线路CN2线路是指中国电信下一代承载网络线路。中国电信CN2线路主要高质量的互联网业务,目前质量最好的网络带宽线路。香港服务器接入了CN2线路,在中国大陆访问香港速度更快,质量最稳定的线路。而 CN2 本身又分为 GT 和 GIA 两个级别以及单向 CN2 与双向 CN2。CN2 GT 属于 CN2 低级别,各方面表现一般,性价比相对于 GIA 要高。CN2 GIA 属于 CN2 高级别,各方面表现很好,不管是速度还是出国线路上速度最快最稳定,价格也要比 GT 高。单向 CN2 与双向 CN2:顾名思义就是一个只去不回,另一个有来有回。单向 CN2 去程走 CN2 线路,回程则是普通的电信线路,双向 CN2 来回都是走 CN2 线路。因此,单向 CN2 在速度方面略逊于双向 CN2。CN2线路的优势一、互通互访的优势更明显CN2线路服务器针对国内的线路来说,解决了不同ISP之间的数据交换问题,电信、联通、移动等网络互访问题,因而更加快速、稳定。二、网络指标性能高CN2线路承载了具备QoS保证的SLA业务,为了满足承载业务对QoS的要求,CN2线路提供了高性能的网络指标,例如单向丢包率以及延时方面都取得了显着的进步。因此,从这方面上来讲,CN2线路带宽的服务器能增加客户业务的灵活性和可拓展性的要求。三、综合性能更优CN2线路带宽的服务器,相比较国内的电信、网通等网络而言,它们的质量更好,延迟更小,并且在安全性方面也是很高的。良好的网络线路极大的提高了用户访问的体验感和使用感知度,因此CN2线路带宽的服务器也是如今较为受到客户喜爱的原因之一。四、由于CN2承载着具有QoS保证的SLA业务,而为了满足所承载业务对QoS的要求,CN2提供了高性能的网络指标。例如,在单向时延、单向丢包率方面取得了显著进步。香港的BGP线路与CN2线路有什么区别呢?用户应该如何去做选择,下面介绍两者不同的优势:首先,香港CN2服务器对于国内其他线路最大的优势,在于解决了不同ISP之间数据的交换问题,电信,联通,移动等互联网互访问题,因而更加快速,稳定!而BGP服务器则不论在安全性稳定性速度上都不一定次于香港CN2服务器,当用户发出访问请求后,将根据BGP协议的机制自动在已建立连接的多个运营商之间为用户提供最佳路由,自动切换,从而实现不同网络运营商用户的高速访问同一机房资源。以上就是给大家分享的cn2和bgp的区别,CN2和BGP哪个快,如何选择大家实际上可以去IDC运营商那里要测试IP和ping测对比!
2022年08月01日
61 阅读
0 评论
0 点赞
2022-07-27
js按条件生成随机json:randomjson实现方法
前端开发中,在做前后端分离的时候,经常需要手写json数据,有3个问题特别揪心:数据是写死的,不能按一定的条件随机生成长度不一,内容不一的数据写数组的时候,如果有很多条,需要一条一条地写,费时费力mock图片特别困难randomjson用来根据模型随机生成json,mock json数据的时候特别有用github地址: https://github.com/finance-sh/randomjsonrandomjson根据条件生成json对应的随机json如何使用安装npm install randomjson用法// 安装 npm install randomjson // 用法 // 引用包 var randomjson = require('randomjson'); // 模型 var modelJson = { "code": "00", "numberCode": "<@[10000,20000]>", "msg": "<@chinese{12,50}>", "msg2": "<@string{2,3}>", "logo": "<@image{100,100}>", "result": { "pList<@{1,3}>":[ { "indexToString": "<@index><@>", "index": "<@index>", "id": "<@[1-5]>", "price": "<@float>", "name": "公司名称<@index>", "person": "李文武<@index>", "address": "北京市海淀区西三旗", "mobile": "1<@number{10}>", "tel": "<@number{4}>-<@number{8}>", "list": [ { "auditKey": 1, "auditValue": "<@[0,1,2]>" }, { "auditKey": 2, "auditValue": "<@[0,1,2]>" } ] } ] } } // 根据模型生成json var myJson = randomjson(modelJson); 根据上边模型生成的json可能是这样: { "code": "00", "numberCode": 10000, "msg": "加义为边平压你治提用根治问求只或程干立农资特", "msg2": "dv", "logo": "https://dummyimage.com/100x100", "result": { "pList": [ { "indexToString": "1", "index": 1, "id": 2, "price": 93.78, "name": "公司名称1", "person": "李文武1", "address": "北京市海淀区西三旗", "mobile": "17929438781", "tel": "1148-56055642", "list": [ { "auditKey": 1, "auditValue": 0 }, { "auditKey": 2, "auditValue": 1 } ] }, { "indexToString": "2", "index": 2, "id": 5, "price": 29.49, "name": "公司名称2", "person": "李文武2", "address": "北京市海淀区西三旗", "mobile": "17826945504", "tel": "7298-46226026", "list": [ { "auditKey": 1, "auditValue": 0 }, { "auditKey": 2, "auditValue": 0 } ] } ] } }词法以<@开始,以>结束,中间内容是randomjson的词法模型定义数据类型<@number>: number类型<@string>: string类型<@null>: null<@boolean>: boolean类型<@chinese>: 中文字符串<@float{number1,number2}>: 浮点数 number1代表整数位数,number2代表小数位数,默认都为2<@image{width,height}>: 生成图片 width为生成图片宽度,height为生成图片高度,默认为400,400<@index>: 元素在数组中的位置,从1开始量词{minNumber, maxNumber}: minNumber到maxNumber个{minNumber,}: 最少minNumber{number}: number个如果是float,minNumber, maxNumber表示整数部分和小数部分的位数如果是imgae,minNumber, maxNumber表示图片宽度高度随机生成其中之一你可以使用“|” 分离多个选项,随机值是其中之一,值为字符串数字范围[1,2,3] 表示1,2,3中的一个,值为数字[1-90] 表示1到90中的一个int值,值为数字数字转字符串在number类型后加空的占位符 "indexToString": "<@index><@>"量词定义注意点值为非数组时,长度在value字符串里,例如:"ret": "<@number{4}>"值为数组时,长度在key里,例如: "p11<@{2,5}>": [{ "p8": "12312", "p9": ["<@string{4,7}>"], "p10": "<@string>" }]
2022年07月27日
36 阅读
0 评论
0 点赞
2022-07-14
什么是专用服务器的虚拟 KVM
专用服务器的虚拟 KVM,通过 VNC 调试和配置您的专用服务器。为了更好地管理和配置根服务器,它可以使用 vKVM 使用的系统。以特殊的 vKVM 模式引导到客户的服务器,因此即使在服务器上安装的系统的网络配置不工作时也可以访问它。什么是 vKVM - 系统?vKVM Rescue System(虚拟键盘/视频/鼠标)是现有 Rescue 系统的扩展,它使用 PXE 在服务器内存中加载 Linux 系统。使用 vKVM 救援系统启动安装在服务器操作系统上的救援系统,以在虚拟机中引导。虚拟机的图形输出通过受 SSL 保护的 VNC 连接在此处传输,因此您有机会在您的操作系统上工作,“就像”您正坐在服务器前一样。vKVM 会自动检测您的硬盘驱动器,以便您可以引导到 BIOS vKVM 中它。此外,服务器的 CPU 在 VM 中虚拟化。此外,VM 模拟网卡,使您能够在 VM 中访问 Internet。如果您的服务器(例如,由于网络设置(例如 iptables)配置不正确而无法通过 SSH 访问),则 vKVM 救援系统是理想的选择。要启动 vKVM,您必须登录客户中心,在左侧菜单中选择您的服务器,然后选择合同“救援系统”。现在选择条目“vKVM”并激活救援系统。一段时间后,vKVM 可用,您可以使用 VNC 客户端登录。为什么选择 vKVM?如果您的服务器由于网络设置或防火墙(例如 iptables)的错误配置等原因无法再通过 SSH 访问,则 vKVM 救援系统是理想的选择。纠正迄今为止借给我们传统救援系统的系统的错误配置。在更复杂的场景中,但 vKVM 提供了其他关键优势:它们几乎直接在您的操作系统中运行,即它们在熟悉的服务器环境中移动并准备就绪您可以选择虚拟机 BIOS 到可引导磁盘在整个启动过程中跟踪它们,这对故障排除非常有帮助通过 Internet 连接,您可以更新整个系统,例如解决任何软件冲突即使您的服务器由于网络配置错误而无法 ping 或无法通过 SSH 访问,vKVM 也能正常工作感谢 vKVM 设计舒适的故障排除和解决方案,这减少了重新安装的需要,当看似“没有任何效果”时vKVM 是一项免费功能,可用于选定的服务器系列。
2022年07月14日
58 阅读
0 评论
0 点赞
2022-07-12
转 CSS视差滚动 心动了,记录一下
今天看到一个css背景图片的视差滚动效果,超好看,记录一下,以后一定会用到!来之bilibili 鹿角です up主的 【CSS视差滚动 你会了咩】{bilibili bvid="BV1Yt4y127Ds" page=""/}预览地址: https://miiiku.xyz/shichagundong/index-js.html 源码地址: https://github.com/miiiku/miiiku.github.io/blob/master/shichagundong/index-js.html<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Long+Cang&display=swap" rel="stylesheet"> <title>Document</title> <style> * { margin: 0; padding: 0; } body { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; } .section-item { width: 100vw; height: 45vh; position: relative; display: flex; overflow: hidden; } .section-item__block { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: 120%; background-repeat: no-repeat; background-position: center 0; transform: translate3d(0, 0, 0); will-change: background-position; } .section-item__block::before { position: absolute; top: 0; left: 0; content: ''; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.35); transition: background-color 0.3s ease; } .section-item:hover .section-item__block::before { background-color: rgba(0, 0, 0, 0.2); } .section-item__text { position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; font-family: 'Long Cang', cursive; color: #F1F1F1; } .section-item__text .text-title { font-size: 24px; font-weight: bolder; margin-bottom: 20px; } .section-item:nth-child(1n) .section-item__block { background-image: url('./images/1.jpg'); } .section-item:nth-child(2n) .section-item__block { background-image: url('./images/2.jpg'); } .section-item:nth-child(3n) .section-item__block { background-image: url('./images/3.jpg'); } .section-item:nth-child(4n) .section-item__block { background-image: url('./images/4.jpg'); } .section-item:nth-child(5n) .section-item__block { background-image: url('./images/5.jpg'); } .section-item:nth-child(6n) .section-item__block { background-image: url('./images/6.jpg'); } </style> </head> <body> <section class="section-item"> <div class="section-item__block" data-index="1"></div> <div class="section-item__text"> <div class="text-title">「四月是你的谎言」</div> <div class="text-desc">我在盛开的樱花下遇见你,从此命运不再属于自己。</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="2"></div> <div class="section-item__text"> <div class="text-title">「言叶之庭」</div> <div class="text-desc">每晚临睡前 每天睁开眼的瞬间 不知不觉 我都在祈盼雨天 祈盼雨天 祈盼和那个人 再次相会</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="3"></div> <div class="section-item__text"> <div class="text-title">「你的名字」</div> <div class="text-desc">黄昏,不是白昼亦不是夜晚,是我努力却看不清你的脸。</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="4"></div> <div class="section-item__text"> <div class="text-title">「天气之子」</div> <div class="text-desc">天气真的是很不可思议,光只是天空的模样就让人感动不已。</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="5"></div> <div class="section-item__text"> <div class="text-title">「K-ON!」</div> <div class="text-desc">重要的,珍惜的,一直在身边,一旦成为理所当然,就难以发现</div> </div> </section> <section class="section-item"> <div class="section-item__block" data-index="6"></div> <div class="section-item__text"> <div class="text-title">「CLANNAD」</div> <div class="text-desc">我也很没用,但是两个人一起的话,就会变得很坚强。</div> </div> </section> <script> const wh = window.innerHeight const sectionBlock = Array.from(document.querySelectorAll('.section-item__block')) window.addEventListener('scroll', function () { sectionBlock.forEach(el => { const { bottom, top, height } = el.getBoundingClientRect() if (bottom <= 0 || top >= wh) return const y = document.documentElement.scrollTop * 0.28 el.style.backgroundPosition = `center -${y}px` }) }) </script> </body> </html>{mtitle title="如果你也觉得好看"/}{mtitle title="麻烦给Up主去点个赞吧"/}
2022年07月12日
130 阅读
0 评论
0 点赞
2022-07-11
Phpstorm SCSS 配置记录一下
最近研究了一下SCSS,但是教程都是vscode里配置,而我用的是phpstorm,好多配置都不会,所以在这里记录一下,我在百度里找的内容。安装Ruby下载地址是: https://rubyinstaller.org/downloads/ 下载最新的就行,安装一下。最后有问一个什么MSYS2的这个东西我也不知道干啥的,反正到最后一只卡在创建密钥过后就不动了。有兴趣的自己研究。打开安装的命令工具,在里面输入gem install sass ,就会生成我们需要SASS文件了,默认路径应该在C盘的Rudy安装目录下的bin目录下会有一个.sass.bat(可能需要打开显示影藏文件)。PhpStorm安装插件SCSS并使用好像是默认的安装的,所以直接讲使用。在箭头的地方添加SCSS就进入配置界面了这里我标记了两点1、程序就是上面第一步安装的Rudy这个生成的文件。2、这里我修改了一下默认的配置$FileName$:$FileParentDir$/css/$FileNameWithoutExtension$.css --style compressed;说明一下:$FileName$:$FileParentDir$/css/$FileNameWithoutExtension$.css:这句是调整css文件的生成位置--style compressed: 这个是生成css文件的格式。一共有四种模式(:nested – 嵌套格式 :expanded – 展开格式 :compact – 紧凑格式 :compressed – 压缩格式,默认是nested模式贼丑!),我这种是压缩模式。{mtitle title="其他的我再研究研究"/}
2022年07月11日
39 阅读
0 评论
0 点赞
2022-07-08
centos 删除目录下所有文件及目录 centos彻底删除文件夹、文件命令
centos彻底删除文件夹、文件命令(centos 新建、删除、移动、复制等命令:1.新建文件夹mkdir 文件名 # 新建一个名为test的文件夹在home下 mkdir /home/test2.新建文本 # 在home下新建一个test.sh脚本 vi /home/test.sh3.删除文件或文件夹1、删除home目录下的test目录rm /home/test2、这种不带参数的删除方法经常会提示无法删除,因为权限不够。 rm -r /home/test3、-r是递归的删除参数表中的目录及其子目录。目录将被清空并且删除。 当删除目录包含的具有写保护的文件时用户通常是被提示的。rm -rf /home/test4、f是不提示用户,删除目录下的所有文件。请注意检查路径,输成别的目录就悲剧了。rm -ir /home/test5、-i是交互模式。使用这个选项,rm命令在删除任何文件前提示用户确认。4.移动文件或文件夹mv [options] 源文件或目录 目标文件或目录示例:1、移动hscripts文件夹/目录下的所有文件,目录和子目录到tmp目录mv hscripts tmp分析:在上述命令中,如果tmp目录已经存在,mv命令将移动hscripts文件夹/目录下的所有文件,目录和子目录到tmp目录。 如果没有tmp目录,它将重命名 hscripts目录为tmp目录。2、移动多个文件/更多问价到另一目录mv file1.txt tmp/file2.txt newdir这个命令移动当前目录的file1.txt文件和tmp文件夹/目录的file2.txt文件到newdir目录。参数:-i:交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答”y”或”n”,这样可以避免误覆盖文件。-f:禁止交互操作。mv操作要覆盖某个已有的目标文件时不给任何指示,指定此参数后i参数将不再起作用。5.复制文件或文件夹cp [options] 来源档(source) 目的檔(destination)参数:-a :相当于 -pdr 的意思;-d :若来源文件为连结文件的属性(link file),则复制连结文件属性而非档案本身;-f :为强制 (force) 的意思,若有重复或其它疑问时,不会询问使用者,而强制复制;-i :若目的檔(destination)已经存在时,在覆盖时会先询问是否真的动作!-l :进行硬式连结 (hard link) 的连结档建立,而非复制档案本身;-p :连同档案的属性一起复制过去,而非使用预设属性;-r :递归持续复制,用于目录的复制行为;-s :复制成为符号连结文件 (symbolic link),亦即『快捷方式』档案;-u :若 destination 比 source 旧才更新 destination !最后需要注意的,如果来源档有两个以上,则最后一个目的文件一定要是『目录』才行!示例:1、复制两个文件:cp file1 file2上述cp命令复制文件file1.php 的内容到文件file2.php中。2、备份拷贝的文件:cp -b file1.php file2.php创建文件file1.php的带着符号 ‘~’的备份文件file2.php~。3、复制文件夹和子文件夹:cp -R scripts scripts1上面的 cp 命令从 scripts 复制文件夹和子文件夹到 scripts1。6、创建目录mkdir 文件名mkdir /var/www/test
2022年07月08日
105 阅读
0 评论
0 点赞
2022-07-05
Typecho 统计文章总数、分类总数、评论总数、页面总数
<?php Typecho_Widget::widget('Widget_Stat')->to($stat); ?> <li>文章总数:<?php $stat->publishedPostsNum() ?>篇</li> <li>分类总数:<?php $stat->categoriesNum() ?>个</li> <li>评论总数:<?php $stat->publishedCommentsNum() ?>条</li> <li>页面总数:<?php $stat->publishedPagesNum() ?>个</li>
2022年07月05日
52 阅读
0 评论
0 点赞
2022-07-02
PHP中spl_autoload_register() 函数详解
spl_autoload_register函数是实现自动加载未定义类功能的的重要方法,所谓的自动加载意思就是 我们的new一个类的时候必须先include或者require的类文件,如果没有include或者require,则会报错。那这样我们就必须在文件头部写上许多include或require文件,非常麻烦;为了使得没有include或者require类的时候也正常new一个类,所以有了自动加载的概念,也就是说new一个类之前不用事先包含类文件也可以正常new,这样我们的文件头部就不用包含许多include或require。其实这算一种封装!{dotted startColor="#ff6c6c" endColor="#1989fa"/}用spl_autoload_register函数可以实现上面说的功能,我们来看看实现原理。这个函数的参数如下: spl_autoload_register(autoload_function, throw, prepend) # autoload_function # 这是一个函数【方法】名称,可以是字符串或者数组(调用类方法使用)。这个函数(方法)的功能就是,来把需要new 的类文件包含include(requeire)进来,这样new的时候就不会找不到文件了。其实就是封装整个项目的include和require功能。 # throw # 此参数设置了 autoload_function 无法成功注册时, spl_autoload_register()是否抛出异常。 # prepend # 如果是 true,spl_autoload_register() 会添加函数到队列之首,而不是队列尾部。{callout color="#a67cf3"}当我们new一个类,并且这个类文件没有被包含时候就会执行这个autoload_function方法:先来看一个错误例子:<?php //当我们直接new一个未包含class类文件时候会报错 $objDemo = new AutoloadClass(); /** Fatal error: Uncaught Error: Class 'AutoloadClass' not found in E:\work\demo\spl\autoloadDemo.php on line 3 Error: Class 'AutoloadClass' not found in E:\work\demo\spl\autoloadDemo.php on line 3 */ ?>使用spl_autoload_register方法<?php //文件 autoloadClass.php ,需要new的文件 class AutoloadClass{ public function __construct() { echo '你已经包含我了'; } } //文件autoloadDemo.php文件 spl_autoload_register('myAutoLoad', true, true); function myAutoLoad($className){ echo "所有的包含文件工作都交给我!\r\n"; $classFileName = "./{$className}.php"; echo "我来包含!{$classFileName}\r\n"; include "./{$className}.php"; } $objDemo = new AutoloadClass(); /** 输出: 所有的包含文件工作都交给我! 我来包含!./AutoloadClass.php 你已经包含我了 */ ?>{/callout}通过上面例子我们可以看到,当new一个未包含的类时候,会去执行spl_autoload_register第一个参数函数名的函数,这个函数有一个参数就是需要new的类名,这个函数的功能就是把这个类给包含进来(类名和文件名一致),这样就实现了自动加载功能。原理就是这样,不是很复杂。另外我们可以改为匿名函数来实现:<?php spl_autoload_register( function ($className) { echo "所有的包含文件工作都交给我!\r\n"; $classFileName = "./{$className}.php"; echo "我来包含!{$classFileName}\r\n"; include "./{$className}.php"; }, true, true); $objDemo = new AutoloadClass(); /** 输出: 所有的包含文件工作都交给我! 我来包含!./AutoloadClass.php 你已经包含我了 */ ?>
2022年07月02日
34 阅读
0 评论
0 点赞
2022-07-01
PHP之mb_internal_encoding()函数使用说明
mb_internal_encoding()(PHP 4 >= 4.0.6, PHP 5, PHP 7) mb_internal_encoding — Set/Get internal character encoding 设置或获取内部字符集描述/Descriptionmixed mb_internal_encoding ([ string $encoding = mb_internal_encoding() ] )//Set/Get the internal character encoding参数编码/Parameters encodingencoding is the character encoding name used for the HTTP input character encoding conversion, HTTP output character encoding conversion, and the default character encoding for string functions defined by the mbstring module. You should notice that the internal encoding is totally different from the one for multibyte regex.字符编码用于HTTP输入,输出字符编码转换,默认的字符编码由mbstring模块字符串函数定义的。你应该注意到内部编码完全不同于多字节的正则表达式。返回值/Return ValuesIf encoding is set, then Returns TRUE on success or FALSE on failure. In this case, the character encoding for multibyte regex is NOT changed. If encoding is omitted, then the current character encoding name is returned.如果设置了编码,则成功返回TRUE或失败时返回FALSE。在这种情况下,对多字节字符编码不改变正则表达式。如果省略编码,则返回当前字符编码名称。示例/Examples<?php /* * Set internal character encoding to UTF-8 * 设置内部字符编码为UTF-8 */ mb_internal_encoding("UTF-8"); /* * Display current internal character encoding * 显示当前内部字符编码 */ echo mb_internal_encoding().PHP_EOL; // UTF-8 mb_internal_encoding("GBK"); echo mb_internal_encoding().PHP_EOL; //CP936 mb_internal_encoding("CP936"); echo mb_internal_encoding().PHP_EOL; //CP936 mb_internal_encoding("iso-8859-1"); echo mb_internal_encoding().PHP_EOL; //ISO-8859-1 ?>
2022年07月01日
22 阅读
0 评论
0 点赞
2022-07-01
div内放了一个固定长宽的img,div的高度莫名多出4px
今天碰到一个问题,很奇怪,div内放了一个固定长宽的img,div的高度莫名多出4px!自己试了好多办法都没有解决,后来百度一下,原来这是个大家都碰到过,解决办法已经有了。三个解决办法,在这里记一下,防止以后忘记了。。。设置img的display:block;设置img父元素的font-size: 0px;设置img浮动,如果你的父元素是有img撑起来的,这个时候会导致,父元素没高度, 可以给父元素添加 绝对定位;就是这么的简单,好,下课。。。
2022年07月01日
36 阅读
0 评论
0 点赞
2022-06-30
php中extension_loaded()函数的使用详解
看到标题相信很多小伙伴都是懵的,对php函数extension_loaded()的用法不是很了解,今天我们给你大家介绍一下实例分析了函数extension_loaded()检查一个扩展是否已经加载的具体用法,并补充说明了查看本机已加载php扩展的方法!{dotted startColor="#ff6c6c" endColor="#1989fa"/}extension_loaded — 检查一个扩展是否已经加载<?php #示例 if (!extension_loaded('gd')) { if (!dl('gd.so')) { exit; } } ?>上述代码判断是否加载 gd 库扩展。补充:查看php已开启扩展的方法:命令行cmd界面:输入:php -m
2022年06月30日
47 阅读
0 评论
0 点赞
2022-06-29
PHP中ob_start()函数的说明和用法
ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行/都会有"Header had all ready send by"的错误,这时可以先用ob_start()打开缓冲区PHP代码的数据块和echo()输出都会进入缓冲区而不会立刻输出.当然打开缓冲区的作用很多,只要发挥你的想象.可以总结以下四点:{dotted startColor="#ff6c6c" endColor="#1989fa"/}1. 用于header()之前<?php ob_start(); //打开缓冲区 echo /"Hellon/"; //输出 header("location:index.php"); //把浏览器重定向到index.php ob_end_flush();//输出全部内容到浏览器 ?>2. phpinfo()函数可获取客户端和服务器端的信息,但要保存客户端信息用缓冲区的方法是最好的选择.<?php ob_start(); //打开缓冲区 phpinfo(); //使用phpinfo函数 $info=ob_get_contents(); //得到缓冲区的内容并且赋值给$info $file=fopen(/'info.txt/',/'w/'); //打开文件info.txt fwrite($file,$info); //写入信息到info.txt fclose($file); //关闭文件info.txt ?>3. 静态页面技术<?php ob_start();//打开缓冲区 php页面的全部输出 $content = ob_get_contents();//取得php页面输出的全部内容 $fp = fopen("output00001.html", "w"); //创建一个文件,并打开,准备写入 fwrite($fp, $content); //把php页面的内容全部写入output00001.html,然后…… fclose($fp); ?>4. 输出代码<?php Function run_code($code) { If($code) { ob_start(); eval($code); $contents = ob_get_contents(); ob_end_clean(); }else { echo "错误!没有输出"; exit(); } return $contents; } ?>{mtitle title="以上都是摘取来的"/}
2022年06月29日
47 阅读
0 评论
0 点赞
1
...
5
6
7
...
11