转义

php函数应用实例

不打扰是莪最后的温柔 提交于 2019-12-05 08:48:34
1.手机号码管控只能填写数字和‘-’符号 if(!is_numeric(str_replace('-','',$request['tel']))){ return $response = return_value(-1, "电话号码只能是数字"); } 2.magic_quotes_gpc函数 在php中的作用是判断解析用户提示的数据,如包括有:post、get、cookie过来的数据增加转义字符“\”,以确保这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。 在magic_quotes_gpc=On的情况下,如果输入的数据有单引号(’)、双引号(”)、反斜线()与 NULL(NULL 字符)等字符都会被加上反斜线。这些转义是必须的,如果这个选项为off,那么我们就必须调用addslashes这个函数来为字符串增加转义。 正是因为这个选项必须为On,但是又让用户进行配置的矛盾,在PHP6中删除了这个选项,一切的编程都需要在magic_quotes_gpc=Off下进行了。在这样的环境下如果不对用户的数据进行转义,后果不仅仅是程序错误而已了。同样的会引起数据库被注入攻击的危险。所以从现在开始大家都不要再依赖这个设置为On了,以免有一天你的服务器需要更新到PHP6而导致你的程序不能正常工作。 http://www.php100.com/html/php

PHP数据过滤函数

ぐ巨炮叔叔 提交于 2019-12-05 08:48:02
函数名 释义 介绍 htmlspecialchars 将与、单双引号、大于和小于号化成HTML格式 &转成& "转成" ' 转成' <转成< >转成> htmlentities() 所有字符都转成HTML格式 除上面htmlspecialchars字符外,还包括双字节字符显示成编码等。 addslashes 单双引号、反斜线及NULL加上反斜线转义 被改的字符包括单引号 (')、双引号(")、反斜线 backslash (\) 以及空字符NULL。提交变量进数据库时,我们必须使用 stripslashes 去掉反斜线字符 nl2br() 将换行字符转成<br> strip_tags 去掉HTML及PHP标记js 去掉字符串中任何 HTML标记和PHP标记,包括标记封堵之间的内容。注意如果字符串HTML及PHP标签存在错误,也会返回错误。 mysql_real_escape_string 转义SQL字符串中的特殊字符 转义 \x00 \n \r 空格 \ ' " \x1a,针对多字节字符处理很有效。mysql_real_escape_string会判断字符集,mysql_escape_string则不用考虑。(基本不用了,使用odb后)  2、PHP简单的数据过滤   1)入库: trim($str),addslashes($str)   2)出库: stripslashes(

Linux-echo:打印彩色输出

假如想象 提交于 2019-12-05 06:24:38
脚本可以使用转义序列在终端中生成彩色文本 文本颜色是由对应的色彩码来描述的。其中包括: 重置=0,黑色=30,红色=31,绿色=32, 黄色=33,蓝色=34,洋红=35,青色=36,白色=37。 要打印彩色文本,可输入如下命令: echo -e "\e[1;31m This is red text \e[0m" Note:其中 \e[1;31m 是一个转义字符串,可以将颜色设为红色, \e[0m 将颜色重新置回。只需要将 31 替换成想要的色彩码就可以了。 对于彩色背景,经常使用的颜色码是: 重置=0,黑色=40,红色=41,绿色=42,黄色=43, 蓝色=44,洋红=45,青色=46,白色=47。 * 要设置彩色背景的话,可输入如下命令: echo -e "\e[1;42m Green Background \e[0m" Note:这些例子中包含了一些转义序列。可以使用 man console_codes 来查看相关文档。 示例 [zhangfd@localhost shell]$ cat printf1.sh #!/bin/bash ## filename:printf.sh echo -e "\e[1;32m `printf "%-5s %-10s %-6s\n" No Name Mark` \e[0m" echo -e "\e[1;46m `printf "%-5s %

Python常用转义字符

给你一囗甜甜゛ 提交于 2019-12-05 06:23:53
\ 在行尾时是 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格 \e 转义 \000  空  \n 换行 \v  纵向制表符 \t 横向制表符 \r 回车 \f 换页 \oyy 八进制数,yy代表字符,如 \o12 代表换行 \xyy 十六进制数 yy代表字符,如\x0a代表换行 \other 其他字符一普通格式输出 来源: https://www.cnblogs.com/mini-test/p/11910104.html

Python转义字符

此生再无相见时 提交于 2019-12-05 06:04:43
本文链接: https://www.cnblogs.com/zyuanlbj/p/11909504.html 所谓转义,可以理解为“采用某些方式暂时取消该字符本来的含义”。这里的“某种方式”指的就是在指定字符前添加反斜杠\,以此来表示对该字符进行转义。 转义字符 说明 \ 在行尾的续行符,即一行未完,转到下一行继续写 \' 单引号 \" 双引号 \0 空 \n 换行符 \r 回车符 \t 水平制表符,用于横向跳到下一制表位 \a 响铃 \b 退格(Backspace) \\ 反斜线 \0dd 八进制数,dd代表字符,如 \012 代表换行 \xhh 十六进制数,hh代表字符,如 \x0a 代表换行 来源: https://www.cnblogs.com/zyuanlbj/p/11909504.html

MyBatis踩坑之SQLProvider转义字符被删除问题

旧街凉风 提交于 2019-12-05 05:28:04
目录 踩坑背景 问题描述 原因追踪 解决方案 方法一 方法二 踩坑背景 项目架构:Spring Boot + MyBatis + MySQL。 使用MyBatis作为ORM框架,jdbc驱动使用的是 mariadb-java-client 。 <dependency> <groupId>org.mariadb.jdbc</groupId> <artifactId>mariadb-java-client</artifactId> <version>2.3.0</version> </dependency> 为了不使用xml形式的配置文件,MyBatis使用接口映射器,并使用映射器注解方式编写SQL语句。 @Mapper public interface TestDAO { @Select("select * from test where id = #{id}") public Test getById(@Param("id") long id); } 问题描述 在批量添加记录时通过SQLProvider动态拼装SQL,具体代码示例如下所示: @Repository @Mapper public interface TestDAO { // 使用SQLProvider拼装SQL实现批量插入 @InsertProvider(type = TestProvider.class,

Python 字符串

半城伤御伤魂 提交于 2019-12-05 05:03:14
Python 字符串 字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。 创建字符串很简单,只要为变量分配一个值即可。例如: v1 = 'Hello World!' v2 = "Python " Python 访问字符串中的值 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。 Python 访问子字符串,可以使用方括号来截取字符串,如下实例: #!/usr/bin/python A1 = 'Hello World!' A2 = "Python ASSFG" print("A1[0]: ", A1[0]) print("A2[1:5]: ", A2[1:5]) 结果: A1[0]: H A2[1:5]: ytho Python 字符串连接 我们可以对字符串进行截取并与其他字符串进行连接,如下实例: #!/usr/bin/python # -*- coding: UTF-8 -*- var1 = 'Hello World!' print ("输出 :- ", var1[:6] + 'b!') 输出 :- Hello b! Python 转义字符 在需要在字符中使用特殊字符时,python 用反斜杠 转义字符。如下表: 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b

Python中的斜杠

一个人想着一个人 提交于 2019-12-05 04:31:06
关于正斜杠和反斜杠 在整体环境下, 正斜杠反斜杠主要用在地址表达上. 在UNIX和Linux中, 地址索引都是使用正斜杠/来表达, 包括url地址资源等, 都是使用正斜杠来表达 在Windows中, 地址的表达, 盘符等, 表达的方式则是使用\反斜杠来表示(也可以使用双正斜杠// 来表示windows中的地址) Python中反斜杠. Python中的反斜杠具有特殊意义, 在使用\n \t \r 等格式符号的时候需要使用到反斜杠. print('hello\npython') hello python 如果想要输出hello\npython , 则需要对反斜杠\进行转义, print('hello\\npython') hello\npython Python中的正则表达式需要先转化为字符串, 然后由字符串转化为正则表达式. 所以,如果通过想用正则表达式表达\\, 在Python中需要输入'\\\\',每个\需要一个\进行一次转义, 则双反斜杠需要\\\\来表示. 这样表示未免太过繁琐, 于是用r''作为转义来表示纯字符串的方式就应运而生了. r''内的字符串, 表示纯字符串, 不需要pyhton进行额外解码, 也就是说, r''内的字符串内无法使用\n \t \r 等格式符号. 且,则在原本正则表达中双反斜杠的写法不再需要, 只需要在需要转义的符号前面加上一个反斜杠即可.

“退格”转义字符使用实例

霸气de小男生 提交于 2019-12-05 02:55:38
1、退格转义字符   1.1 占用2字节内存空间   1.2 '\b' :表示按 Baackspace 键   注: 在 CMD 窗口下 '\b' 仅且表示光标前移一位,并不会删除前一位字符,但在后续赋值时会将其覆盖。     建议使用 :'\b \b' (经测试在 MyEclipse 中使用会显示问号) 2、退格转义字符操作实例( 请在 CMD 窗口执行 .class 字节码文件,查看效果 ) 1 public static void javaEscapeCharacter_b()throws Exception{ 2 while(true){ 3 for(int i=0;i<20;i++){ 4 System.out.print("_|~|"); 5 Thread.sleep(20); 6 }for(int i=0;i<20;i++){ 7 System.out.print("\b \b\b \b\b \b\b \b"); 8 Thread.sleep(20); 9 } 10 } 11 }   2.1 运行效果展示:   2.2 代码分析:     throws Exception:表示如果发生异常则将异常抛出至,产生异常的调用方法处     '\b \b' 含义:'\b' 光标前移一位,再输出 ' '(空格)将被光标越过的字符覆盖掉。此时原光标前字符被空格替换且光标位于原位置

Android中R文件不能生成问题

给你一囗甜甜゛ 提交于 2019-12-05 00:29:22
一.xml本身有错误 R.java这个文件是会自动生成的,但是如果你不小心xml文件写错了,或者不小心在编辑xml的时候点击了run(其实这个时候会运行这个xml文件,会生成一个同名的xml文件,后缀为xx.out.xml),然后正巧你游clear了一下项目,你可能会发现gen下面的R.java的文件没有了,这个在刚开始的时候很气人,真不知道怎么解决,后来发现,只要xml文件有问题,系统是绝对不会给你自动生成这个R.java文件,因为他要参照你的每张xml里的数据来生成R.java,所以自然就生成不了了。虽然知道了原因但是问题头疼,假如项目的layout xml文件有几十个,这个时候怎么办,难道要一个一个xml的看吗,呵呵,其实也不是,把console中的信息clear一下,然后再clear项目一下,这个时候,console中会有很多红色的信息,参照这个肯定能准确的找到哪个文件报错了。 下面这个事误运行了xml文件,可以看到gen的包不是空的,R.java文件也存在,并且明确的支出了是layout包中的错误 二。编码格式不正确 有时候由于编码格式问题,造成无法生成R文件,此时后,把编码格式变成utf-8即可 三,不知何种原因,可能是配置问题(转义字符的问题). 一般来说,Android项目是的R文件是由系统生成的资源的定义,但是偶尔会出现R文件不同步或是丢失的情况. 不同步的情况