Category: Php / Pear / Mysql / Node.js

MYSQL模式匹配:REGEXP和like用法

like要求整个数据都要匹配,而REGEXP只需要部分匹配即可。 、 也就是说,用Like,必须这个字段的所有内容满足条件,而REGEXP只需要有任何一个片段满足即可。   MySQL提供标准的SQL模式匹配(like),以及一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的格式(regexp)。 SQL的模式匹配允许你使用“_”匹配任何单个字符,而“%”匹配任意数目字符(包括零个字符)。在 MySQL中,SQL的模式缺省是忽略大小写的。下面显示一些例子。注意在你使用SQL模式时,你不能使用=或!=;而使用LIKE或NOT LIKE比较操作符。     为了… Read More

MySQL替换函数REPLACE替换字符串方法

在网站搬家、更换域名的时候,Drupal和Wordpress都是用的MySQL的数据库,很多配置信息是写在MySQL数据库里面的。我们需要将数据库里面的相关配置信息替换成新空间或域名的信息。这时我们就要用到MySQL的字符串替换函数Replace了。 MySQL Replace 替换函数语法: update TABLE_NAME set FIELD_NAME = replace(FIELD_NAME, "find this string", "replace found string with this string"); Replace 替换函数案例: update client_table set url = replace(url, "py… Read More

用PHP正则表达式清除字符串的连续空白 (php 正则 只保留一个空格)

PHP方法: <?php $str = " This line containstliberal rn use of whitespace.nn"; // First remove the leading/trailing whitespace //去掉開始和結束的空白 $str = trim($str); // Now remove any doubled-up whitespace //去掉跟隨別的擠在一塊的空白 $str = preg_replace('/s(?=s)/', '', $str); // Finally, replace any non-space whitespace, with a space //最後,去掉非space 的空白,用一個空格代替 $st… Read More

MYSQL: 查询数据库字符串是否被包含在另一个字符串中 Search where column value is within a string

CREATE TABLE myTable( id INT NOT NULL AUTO_INCREMENT PRIMARy KEY, name VARCHAR(100), city VARCHAR(100)); INSERT INTO myTable (name, city) VALUES ('test', 'anza'); INSERT INTO myTable (name, city) VALUES ('fish', 'riverside');   SELECT * FROM myTable WHERE 'anza city' LIKE CONCAT('%', city, '%') OR 'riverside county' LIKE CONCAT('%', city, '%… Read More

关于 MySQL LEFT JOIN 你可能需要了解的三点

即使你认为自己已对 MySQL 的 LEFT JOIN 理解深刻,但我敢打赌,这篇文章肯定能让你学会点东西! ON 子句与 WHERE 子句的不同 一种更好地理解带有 WHERE … IS NULL 子句的复杂匹配条件的简单方法 Matching-Conditions 与 Where-conditions 的不同 关于 “A LEFT JOIN B ON 条件表达式” 的一点提醒 ON 条件(“A LEFT JOIN B ON 条件表达式”中的ON)用来决定如何从 B 表中检索数据行。 如果 B 表中没有任何一行数据匹配 ON 的条件,将会额外生成一行所有列为 NULL 的数据 在匹配阶段 WHERE 子句的条件都不会被使用。仅在匹配阶段完成以后,WHERE 子句条件才会被… Read More

MySQL数据库的FIND_IN_SET函数使用方法详解 (字符串是否被包含)

MySQL 的 find_in_set函数使用方法: 很多时候我们在设计数据库时有这种情况,比如: 有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 …..11,12,13等等 现在有篇文章他既是 头条,又是热点,还是图文, type中以 1,3,4的格式存储. 那们我们如何用sql查找所有type中有4图文标准的文章呢, 这就要我们的find_in_set出马的时候到了. 先看mysql手册中find_in_set函数的语法: FIND_IN_SET(str,strlist) 假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。一个字符… Read More

PHP的password_hash()使用实例

一、前言 PHP5.5 (PHP 5 >= 5.5.0) 提供了许多新特性及Api函数,其中之一就是Password Hashing API(创建和校验哈希密码)。 它包含4个函数:password_get_info()、password_hash()、password_needs_rehash()、password_verify()。 在PHP5.5之前,我们对于密码的加密可能更多的是采用md5或sha1之类的加密方式(没人像CSDN那样存明文吧。。),如: echo md5("123456"); //输出: e10adc3949ba59abbe56e057f20f883e 但是简单的md5加密很容易通过字典的方式… Read More

PHP: extract 将数组array的key变为变量 ( extract函数的定义和用法 )

将键值 “Cat”、”Dog” 和 “Horse” 赋值给变量 $a、$b 和 $c: <?php $a = "Original"; $my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse"); extract($my_array); echo "\$a = $a; \$b = $b; \$c = $c"; ?> 定义和用法 extract() 函数从数组中将变量导入到当前的符号表。 该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。 第二个参数… Read More

浅谈 PHP 与手机 APP 开发(API 接口开发)

这个帖子写给不太了解PHP与API开发的人 一、先简单回答两个问题: 1、PHP 可以开发客户端? 答:不可以,因为PHP是脚本语言,是负责完成 B/S架构 或 C/S架构 的S部分,即:服务端的开发。(别去纠结 GTK、WinBinder) 2、为什么选择 PHP 作为开发服务端的首选? 答:跨平台(可以运行在UNIX、LINUX、WINDOWS、Mac OS下)、低消耗(PHP消耗相当少的系统资源)、运行效率高(相对而言)、MySQL的完美搭档,本身是免费开源的,…… 二、如何使用 PHP 开发 API(Application Programming Interface,应用程序编程接口) 呢? 做过 API 的… Read More

php程序员应具有的7种能力

php程序员应具有什么样的能力,才能更好的完成工作,才会有更好的发展方向呢?在中国我想您不会写一辈子代码的,那样不可能,过了黄金期,您又怎么办呢?看了本文后,希望对您有所帮助。   一,php能力   1,了解阶段,您能写一些代码,因为那是在手册和google的帮助下,您才完成的。变量乱定义,N多函数不知道,做起事来很慢,想到什么写什么,代码写的比较乱,后期维护很麻烦。   2,熟悉阶段,经常查函数,手册估计也看过一,二遍了,常用的函数基本上您都了解了。后 期维护给您带来了不少痛苦,您开始发现自己的代码有很多不足,开始思考如果改进自己的代码,如何站在项目的角度来规划自己的代码,… Read More

解决URL出现%E2%80%8E(Zero-Width Space)

当URL出现%E2%80%8E就代表你的URL里面有包含一个ZERO-WIDTH SPACE (ZWSP) 这个是肉眼无法发现的空白,有时候你会觉得明明已经按下→了,却怎么游标还在原地,没有移动到下一个字元去   这种时候就代表这两个字元中间有一个ZWSP的存在 ZWSP一般情况是打不出来的,但是如果你是透过WORD等等的文件编辑器复制贴上的 就很有可能含有ZWSP,一般情况下ZWSP并不影响阅读 但是当它变成URL的一部分,就会变成%E2%80%8E ,使你的URL错误 这都还算是好发现且好解决的 要是当他要拿来当hash的值做验证,如同下面这样 if(sha1($password)!== sha1($_P… Read More

Adaptive Images : 为不同的屏幕尺寸提供不同的图片

为其提供不同的图片。接下来我们就看一看如何利用该技术实现图片自适应。 设置自适应图片 实现 Adaptive Images 解决方案需要 Apache 2、PHP 5.x 和 GD 库,也就是说需要 Web 服务器端编程。首先,在其网站上下载.zip 文件开始配置:   解 压文件,然后将其中的adaptive-images.php和.htaccess文件拷贝到网站的根目录。如果你网站的根目录下已经有一 个.htaccess文件了,不要覆盖它。参考下载包中的instructions.htm文件看看怎么做合适。接着在网站根目录下创建一个名为 ai-cache 的文件夹。   用你最喜欢的 FTP 客户端软件设置该文件夹的权… Read More

PHP利用FPDI 制作PDF 档案 (php合并pdf, php签名pdf)

昨天研究如何在既有的PDF 档案上放入中文字,虽然找到支援中文的FPDF ,但是有些Unicode 字集我实在试不出如何显示(如:堃) 。   我的同事建议我用图形来解决看看,以下就是我的实验过程(我用的是Windows 平台) 。   我用的相关技术如下: 名称说明下载网址 FPDF PHP 上用来产生PDF 的第三方套件 [http://www.fpdf.org/](http://www.fpdf.org/) FPDI 用来载入一个已存在的PDF 档案,以供FPDF 使用 [http://fpdi.setasign.de/](http://fpdi.setasign.de/) 香港参考宋体(DFSongSd.tt… Read More

一组PHP可逆加密解密算法

对于大部分密码加密,我们可以采用md5、sha1等方法。可以有效防止数据泄露,但是这些方法仅适用于无需还原的数据加密。   对于需要还原的信息,则需要采用可逆的加密解密算法。 下面一组PHP函数是实现此加密解密的方法:   加密算法如下: function encrypt($data, $key) { $key = md5($key); $x = 0; $len = strlen($data); $l = strlen($key); for ($i = 0; $i < $len; $i++) { if ($x == $l) {