PHP笔记随笔

1.CSS控制页面文字不能复制:

body{-webkit-user-select:none;}

 

2.【php过滤汉字和非汉字】

$sc="aaad....##--__i汉字过滤"; //iconv("UTF-8","GB2312",$sc);utf-8转码

echo $temp=eregi_replace("[^\x80-\xff]","",$sc); //保留汉字(过滤非汉字)

echo $temp=preg_replace("/[\\x80-\\xff]/","",$sc); //保留非汉字(过滤汉字),注意两条反斜线

3.查询数据库中某个字段中用逗号分隔的字符串是否包含用户传递的某个值,这样写SQL语句:

SELECT * FROM tb WHERE field LIKE ‘%,1‘ OR field LIKE ‘1,%‘ OR field LIKE ‘%,1,%‘ OR field = ‘1‘

查询结果见图。不知道是否有更简单的方法,目前这样可行。感谢学敏!

4.PHP上传文件获取后缀名:

$temp_arr = explode(".", $upload_file_name);

$file_ext = array_pop($temp_arr);

$file_ext = trim($file_ext);

$file_ext = strtolower($file_ext); //$file_ext 文件的后缀

5.PHP获取图片尺寸大小

$arr=getimagesize("1.jpg");

echo $arr[0]."< br/ >"; //the width

echo $arr[1]; //the height

6.PHP:Deprecated: Function set_magic_quotes_runtime() is deprecated解决方案:

php.ini 修改:error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED

7.echo $thisUrl=dirname(‘http://‘.$_SERVER[‘HTTP_HOST‘].$_SERVER[‘REQUEST_URI‘]).‘/../../‘;exit;

8.PHP 匹配多对中括号中的内容,如下:

$string = "这是[3]def[25]我的[26]想说的话[wer3][as][41]正则匹配!";

preg_match_all(‘/\[([a-z0-9]+)\]/‘, $string, $matches);

print_r($matches);

9.$qqContent=‘(页面内容)‘;

$pat = ‘/<div class="allnum">.+?<\/div>/‘;

$str=str_replace("\r", "",$qqContent);

$str=str_replace("\n", "",$str);

preg_match_all($pat, $str, $res);

提取数字用:

preg_match_all(‘/\d+/‘, $res[0][0], $nums);

print_r($nums[0][0]); //得到结果。

10.PHP获取当前页面的所有超链接:

$str = ‘(包含超链接的字符串)‘;

$pat = ‘/<a(.*?)href="(.*?)"(.*?)>(.*?)<\/a>/i‘;

preg_match_all($pat, $str, $m);

print_r($m);  //其中$m[2]为超链接内容,$m[4]为超链接的标题。

11.Linux 解压

解压tar.bz2方法:tar -vxjf filename.tar.bz2

解压tar.gz 方法: tar zxvf filename.tar.gz

解压zip方法:unzip filename.zip

12.Linux 压缩当前目录下的文件夹

tar -zcvf common.tar.gz common,此命令:压缩当前目录下的common文件夹

13.匹配图片路径:(如果源代码中有空格,先去掉“\r”和"\n",然后再匹配。)

$str=str_replace("\r", "",$content);

$str=str_replace("\n", "",$str);

$pattern="/<[img|IMG].*?src=[\‘|\"](.*?(?:[\.gif|\.jpg]))[\‘|\"].*?[\/]?>/";

preg_match_all($pattern,$str,$match);

print_r($match);

14.PHP中在远程路径(FTP)进行操作,比如创建文件夹:

$remote="ftp://username:[email protected]/test/txt";mkdir($remote, 0777, true );

意思即为:在baidu网站根目录创建目录 /test/txt...,其中username和password分别为当前网站的FTP登录账号和密码。

15.判断一个网络文件是否存在(兼容所有可能性):

function checkRemoteFileExists($file) {return (bool)fopen($file, ‘rb‘);}

16.PHP判断一个远程文件是否存在:

$url = "http://url.cn/ERUKm9 ";

$fileExists = @file_get_contents($url, null, null, -1, 1) ? true : false;

echo $fileExists; //返回1,就说明文件存在。

17.PHP匹配图片路径:

preg_match_all("/<img.*src\s*=\s*[\"|\‘]?\s*([^>\"\‘\s]*)/i",str_ireplace("\\","",$content,$arrs));

$arrs[1][0]就是图片的路径!

18.PHP中读取https请求协议的网页内容,有时候file_get_contents()会出错,比如这样的:$userinfo =‘https://...‘;可以使用如下方法:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$userinfo);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1) ;

$string= curl_exec($ch); //file_put_contents(‘string.txt‘, $string);

19.PHP正则匹配一对中括号内的内容为空:

$ss="sdfghjfsd[url]88888888888888[/url]";

$ss = preg_replace(‘/\[url\S*\[\/url\]/‘, ‘‘, $ss);

echo $ss;

20.MySQL配置日志文件:

在MySQL安装目录下my.ini里面找到[mysqld],给里面加入log="E:/mysql_log.txt",然后重启Apache,重启MySQL服务即可。

21.MySQL获取日期的一些函数:

mysql获取上个月的当前时间:select date_sub(now(),interval 1 month) ;

获取上个月的第一天:select date_sub(date_sub(date_format(now(),‘%y-%m-%d 08:00:00‘),interval extract( day from now())-1 day),interval 1 month);

时间: 2024-10-14 11:53:58

PHP笔记随笔的相关文章

深度学习(DL)与卷积神经网络(CNN)学习笔记随笔-01-CNN基础知识点

第一天<CNN基础知识点>From:Convolutional Neural Networks (LeNet) 神经认知机. CNN的灵感来源在诸多论文中已经讲得很全面了,就是伟大的生物发现Receptive Field(感受野细胞).根据这个概念提出了神经认知机.它的主要作用就是Recept部分图像信息(或特征),然后通过分层递交相连,将各个局部特征组合成整个图像特征. 需要仔细阅读的论文包括: (1) 第一篇关于感受野功能的论文Receptive fields and functional

object - c 语言基础 进阶笔记 随笔笔记

重点知识Engadget(瘾科技)StackOverFlow(栈溢出)Code4Apprespon魏先宇的程序人生第一周快捷键: Alt+上方向键 跳到最上面  Alt+下方向键 跳到最下面         Alt+左方向键 跳到最左面   Alt+右方向键 跳到最右面        Alt+shift+方向键  可以批量复制内容,在按方向键可以删除行        command+鼠标  纵向复制内容userInteractionEnabled  控件的交互性;类的三大特性 :工程名:首字母一

CPP 学习笔记随笔

CPP对象模型 何为C++对象模型? C++对象模型可以概括为以下2部分: 语言中直接支持面向对象程序设计的部分 对于各种支持的底层实现机制 语言中直接支持面向对象程序设计的部分,如构造函数.析构函数.虚函数.继承(单继承.多继承.虚继承).多态等等,这也是组里其他同学之前分享过的内容.第一部分这里我简单过一下,重点在底层实现机制. 在c语言中,"数据"和"处理数据的操作(函数)"是分开来声明的,也就是说,语言本身并没有支持"数据和函数"之间的关

微信应用号开发必备技能都在这里了啦!

"微信应用号"就像平地里炸响的一声春雷,在互联网圈内炸开了锅,小代码小程序即将成为主流,H5迎来了自己的第二春.废话少说,关于微信应用号开发技能,你都掌握了吗? 没掌握的看这里,干货全在这儿了! 下载中心: <HTML 5 从入门到精通>-中文学习教程 http://down.51cto.com/data/2121865 HTML5与CSS3基础教程(第8版)中文高清版 http://down.51cto.com/data/2213571 HTML5权威指南 http://

nginx 反向代理http和https配置

nginx可以反向代理http,同样也可以代理https,只是需要ssl证书.这里推荐一个好用的证书: https://github.com/Neilpang/acme.sh/wiki/%E8%AF%B4%E6%98%8E 步骤非常详细. 安装nginx 参照: http://mrdeng.blog.51cto.com/3736360/1735313 编译的时候需要制定ssl模块: --with-http_ssl_module ,启用nginx对ssl的支持. 安装完成之后,配置反向代理的ngi

新随笔--读书笔记《学会提问》:学习提出好问题的思维方法

新随笔--读书笔记<学会提问>:学习提出好问题的思维方法 书中要点摘录: "对自己的所见所闻如何回应,你必须做出选择: 1.你把别人的观点当成自己的观点. 2. 对对方的观点进行批判后,再接收." 批注: 我平时也有这个问题,常常会不加思考的接受别人的观点,通常是比我资深或更专业的人的观点,大多数时候确实没有经过分析. 日后需要注意: 1. 或许他的论点是片面的,或已过时的,我没有分析,简单接受,时间长了会影响我的思维习惯. 2. 如果对观点进行批判后再接受,更能将谈话深入

工作随笔——spring异步处理@Async使用笔记

@Async使用笔记 必须是public方法 必须是非static方法 方法调用的实例必须由spring创建和管理 代码示例如下: // 创建Foo类@Component class Foo { @Async public static void bar(){ /* ... */ } @Async public void bar2(){ /* ... */ } } // 调用示例代码class Test { @Autowired //@Lazy(true)可以解决spring循环引用的问题 Fo

邹欣老师的《构建之法》第一章“概论”学习笔记与自我随笔

刚读完了邹欣老师的<构建之法>第一章“概论”,四个字形容:酣畅淋漓. 概论将自己的一些模糊的认识清晰化,用准确的文字描述了出来,填补了脑海里的一些灰色地带. 总结一下:概论通俗地阐述了编程.软件.计算机科学.软件工程的联系与区别,简单说,编程是一项具体动作,软件是供人使用的产品,具体有很多种类型,而计算机科学是偏向理论研究,软件工程就像其他工程学一样,是在一定条件下合理配置资源达到生产软件的目的. 本人作为一名从小对编程.软件.计算机感兴趣的Nerd,虽然大学专业与此无关,但刚毕业时签了一份软

【Android开发学习笔记】【高级】【随笔】插件化——Activity生命周期

前言 如同第一章我们说的,宿主程序通过 dexclassloader 将插件的类加载进来,然后通过反射去调用它的方法,这样Activity就被当成了一个普通的类来执行了,因此系统不再接管它的生命周期,也就是说Activity的生命周期函数失效了.针对这样的问题,有网友想出使用Fragment来解决此问题,Fragment既有类似于Activity的生命周期,又有类似于View的界面,因此选它比较合适,具体的做法是将Fragment加入到宿主的代理Activity内部,其生命周期将完全由代理Act