首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP在CTF中的应用场景

PHP常用函数 strpos("1","2")在1中查找二并返回索引false str_replace("1","2","3")在3中找1并替换为2 define()定义大小写不敏感的常量 !...文件指针在文件的开头开始。w打开文件为只写。删除文件的内容或创建一个新的文件,如果它不存在。文件指针在文件的开头开始。a打开文件为只写。文件中的现有数据会被保留。文件指针在文件结尾开始。...创建新的文件,如果文件不存在。x创建新文件为只写。返回 FALSE 和错误,如果文件已存在。r+打开文件为读/写、文件指针在文件开头开始。w+打开文件为读/写。删除文件内容或创建新文件,如果它不存在。...php中所有用户自定义的函数类和关键词(if else echo)不区分大小写但是变量大小写敏感php is_numeric()绕过 [判断是否为数字数字字符串]用url编码中的空字符%00%20进行绕过...开头转换为8进制,包含0x用16进制,否则用10进制) $i='666'; $ii=$_GET['n']; if(intval(var:$ii==$i,base:0)){ echo $flag; }//

11710
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Leetcode【648、1072】

    如果继承词有许多可以形成它的词根,则用最短的词根替换它。...如果 pre 在词典中能找到(为加快查找速度,可以将词典转化为 set),说明 pre 为前缀的 word 可以用词典中的对应词根替换掉。如果 pre 在词典中都不能找到,则不替换即可。...进一步发现,其实没有必要对固定的那一真正进行翻转。当某些的值完全相等完全相反时,他们总会同时变为符合条件的。比如 [0,1,0] 和 [1,0,1] 总会同时变成符合条件的。...: 1, (0,0,1): 1} 第三 [1,1,0],因为第一个数字是 1,可以先将每一位按位取反,变成 [0,0,1],发现 [0,0,1] 在 dic 中出现过,则统计数加 1,dic = {...row[0] == 0: dic[tuple([col for col in row])] += 1 elif row[0] == 1: # 如果某一

    47530

    PHP的基本规则

    除非字符串中有特殊情况,否则,在程序以及HTML中不允许出现两个连续的空格。 任何情况下,PHP程序中的空白应当不包含任何TAB空格。同时,任何程序行尾也不能出现多余的TAB空格。...由 Zend 其参与Zend Framework项目的伙伴公司发行的类必须Zend_开头并且必须按等级顺序放在Zend/目录下。...标准计算机英文为蓝本,尽量避免使用拼音拼音英文混合的命名方式。 函数的名字和变量的命名规范一致。 函数定义中的左小括号与函数名之间无空格。 开始的左大括号另起一。...声明为privateprotected的类成员变量名必须一个单独的下划线开头,这是唯一的下划线在变量名中的用法。声明为public的变量从不以下划线开头。...A.3.2  字符串 1.字符串文字 如果字符串是文字(不包含变量),则用单引号(apostrophe)引起来: $a = 'Example String'; 2.包含单引号(')的字符串文字 如果文字字符串包含单引号

    5.1K50

    Linux私房菜:走进bash

    home 移动到指令串最前面 ctrl + e end 移动到指令串最末尾 变量使用 在终端输入,如设定a=b(不能以数字开头,等号两边不能有空格),那么可以使用echo指令取出值b:echo $...M按月份排序 n按数字排序 r反向排序 u去重,相同数据仅出现一 t指定分隔符 k按指定区间排序,cat /etc/passwd | sort -t ':' -k 3 wc [-lwm...,-a参数代表追加 字符转换 tr [-ds],用于将删除替换某一讯息中的文字 d后接某一字符用于删除 s后接被替换的字符和待取代的字符 col [-xb],将tab键转换成对等的空格键 join...-[til2] file1 file2,处理两个文字的数据 paste [-d] file1 file2,tab键分隔将两文件的对应每一合并成一,-d参数可以指定分隔符 expand [-t]...参数为行数进行分区;PREFIX指定分区文件名前缀 参数替换 xargs -[0epn] command,产生某个指令的参数 减号用途 减号-可用于连接一些特殊的stdin和stdout,像这个文件压缩和解压缩的示例

    2.5K20

    Python 正则表达式详解(建议收藏!)

    匹配任意一个字符 \d 匹配数字 \D 匹配非数字 \s 匹配特殊字符,如空白,空格,tab等 \S 匹配非空白 \w 匹配单词、字符,如大小写字母,数字,_ 下划线 \W 匹配非单词字符 [ ] 匹配...[ ]中列举的字符 表示数量 * 出现0次无数次 + 至少出现一次 ?...')) #规定必须2开头,否则none print(re.match('^2s','2stoooabatestas')) #必须2s开头 \b 匹配一个单词的边界 \b:表示字母数字与非字母数字的边界...re.s findall中另外一个属性re.S 在字符串a中,包含换行符\n,在这种情况下 如果不使用re.S参数,则只在每一内进行匹配,如果没有,就换下一重新开始。...如下要寻找test.*123的数据,因为test和123在不同的如果没加re.s的话,他会在每一个进行匹配查找而不是将字符串作为一个整体进行查找 import re a = """aaatestaa

    1.7K20

    Linux系统命令三剑客命令实战操作(文未有福利)

    01 Grep实例介绍 grep "San" testfile #过滤有San的 grep '^J' testfile #显示J开头 grep...0-9]\{1,\}\/[0-9]\{1,\}\/[0-9]\{1,\}/11\/14\/46/' #将以Popeye开头打印,然后将“数字/数字/数字”这格式的数字替换成 11/14/46 #...$//g' #删除以.结尾行 sed 's/^[][]*//g' #删除空格 sed 's//.[][]*/[]/g' #删除句号后跟两个更多的空格,用一个空格代替...$2}’ datafile #:分隔打印Dan开头的第二列内容 awk –F : ‘/^[CE]/{print $1}’ datafile #打印CE开头的第一列 awk –F :...#匹配916的:分隔打印第一列 awk -F : '/^Vinh/{print "a"$5}' 2.txt #显示Dan开头并在第五列前加上a awk –F : ‘{print 2”,”1

    1.1K10

    (转)Java正则表达式入门

    众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。...大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个多个字符串。...^java 条件限制为Java为开头字符 $为限制结尾 java$ 条件限制为java为结尾字符 ....x) 在这种模式下,匹配时会忽略(正则表达式里的)空格字符(译者注:不是指表达式里的"//s",而是指表达式里的空格,tab,回车之类)。注释从#开始,一直到这行结束。...抛开空泛的概念,下面写出几个简单的Java正则用例: ◆比如,在字符串包含验证时 //查找Java开头,任意结尾的字符串 Pattern pattern = Pattern.compile("

    96810

    正则表达式详解

    ; import re text = "韦德wade迈阿密 韦德3e 哈哈哈韦德maimie 韦德美国_e" # 韦德开头,e结尾,中间是1个n个字母、数字、下划线(汉字);中间空格无法识别则分开提取...,e结尾,中间是1个n个字母、数字、下划线(汉字);没有空格会尽可能多去匹配(默认贪婪匹配) data_list = re.findall("韦德\w+e", text) print(data_list...,返回第一个对象 import re text = "换了斗地主,2B逗3B" # .代表任意字符,如果特定提取.则用\.转义 data_list = re.match("\dB", text) print...(data_list) 输出: None import re text = "2B逗3B" # .代表任意字符,如果特定提取.则用\.转义 data_list = re.match("\dB", text...# 1.校验手机号是否正确 result = re.match("^1[3-9]\d{9}$", mobile) # ^表示开头,$结尾,手机号非1开头超出11位都会校验住 if result:

    7610

    Linux中编写Shell脚本

    1、一个规范的Shell脚本在第一会指出由哪个程序(解释器)来执行脚本中的内容,这一内容在Linux bash的编程一般为:#!/bin/bash #!.../bin/sh”是没有区别的,但更规范的写法是在脚本的开头使用 #!...,需要强引用的,则用单引号(‘’),如果是命令的引用,则用反引号(``)。...位置参数之间用空格分隔,Shell取第一个位置参数替换程序文件中的 1,第二个替换 2 , 依次类推。0 是一个特殊变量,它的内容是当前这个shell程序的文件名,所以 0 不是一个位置参数。...用于运算 语法:expr 表达式 范例:expr 2 + 2 ; expr 2 – 2 ; expr 2 * 2 ; expr 2 / 2 注意:运算符号和数字之间要有空格

    7.2K10

    shell编程基础入门

    ^什么开头。 $什么结尾。 ^$表示空行。 && 左边命令执行成功后,在执行下一个命令 || 左边的命令没有执行成功后,才会执行后面的命令。 ;常常把两条命令写在一中间用;隔开。有的意思。...http://www.linuxidc.com/Linux/2015-05/116936.htm 规则:默认方式下 1.数字开头的优先级最高 2.小写字母开头的优先级次之...(是否为空、是否定义等)来改变它的值 变量替换 可以使用的变量替换形式: 形式说明${var}变量本来的值${var:-word}如果变量 var 为空已被删除(unset),那么返回 word,但不改变...格式字符串是以%开头的字符串,在%后面跟有各种格式字符,说明输出数据的类型、形式、长度、小数位数等。...第3的输出语句格式控制串中,两格式串%d 之间加了一个空格(非格式字符),所以输出的a、b值之间有一个空格

    1.3K40

    Shell基本操作与命令

    /bin/sh 放在程序开头,表示用/bin/sh方式来解析。...4、特殊符号 1)# 用于开头表示定义,用于其他首表示本行注释不执行 2); 多个语句放在同一用此分隔。 3);; 在使用case时,作为每个选项的结束。.../xxx.sh是在子shell下执行) 5、$ 1)$$ 当前Shell进程的ID 2)$0 当前脚本的文件名 3)$n 传递给脚本函数的参数。n 是一个数字,表示第几个参数。...$*" 会将所有的参数作为一个整体,"$1 $2 … $n"的形式输出所有参数;"$@" 会将各个参数分开,"$1" "$2" … "$n" 的形式输出所有参数。 7)$?...5)数学运算: [] 不可以使用 [[ ]]可以使用+ - * / % 6)组合:均可用各自逻辑符号连接的数字(运算)测试、文件测试、字符测试 两个使用时都需要用空格分隔运算符和值。

    1.5K50

    JavaScript replace() 方法 及正则表达式

    定义和用法 replace() 方法用于在字符串中用一些字符替换另一些字符,替换一个与正则表达式匹配的子串。..."$"  :$会匹配字符串的结尾 "\b" :不会消耗任何字符只匹配一个位置,常用于匹配单词边界 如 我想从字符串中"This is Regex"匹配单独的单词 "is" 正则就要写成 "\bis\...b"       \b 不会匹配is 两边的字符,但它会识别is 两边是否为单词的边界  "\d": 匹配数字,     例如要匹配一个固定格式的电话号码0开头前4位后7位,如0737-5686123...:匹配除了换行符以外的任何字符     这个算是"\w"的加强版了"\w"不能匹配 空格 如果把字符串加上空格用"\w"就受限了,看下用 "."...,下划线 的字符 "\S"   匹配任意不是空白符的字符  "\D"  匹配任意非数字的字符  "\B"  匹配不是单词开头结束的位置 "[^abc]"  匹配除了abc以外的任意字符 持续更新

    1.3K10

    正则三剑客-grep

    ^ 匹配开始,如:/^sed/匹配所有sed开头。 $ 匹配结束,如:/sed$/匹配所有sed结尾的。 ....* 匹配0个多个字符,如:/*sed/匹配所有模板是一个多个空格后紧跟sed的。 ? 匹配0个一个字符,如:ro?t   可以匹配 rt ;rot 。 + 匹配1个多个字符,如:ro?...//非数字(只要不是数字,任何一个字符都可以匹配) # grep ‘^[^0-9]’ test.txt                         //数字开头 # grep ‘[^a-z...//非数字和字母开头,(匹配特殊字符) ^ 放在  []  里面是 取非 ^ 放在  [] 外面是  开头 # grep ‘r.o’ test.txt                ....[] 里面是 取非           ^ 放在 [] 外面是 开头 例如: ^  锚定的开始 如:’^grep’匹配所有grep开头

    68560

    Python之变量类型和if判断方式

    \n表示换行 \t表示制表符,可以理解为四个空格 布尔型(bool),只有True和False两个值,分别表示真和假,两者之间可以用and,or和not运算 空值(none),none不能理解为0,none...表示无意义 2.变量 变量可以理解为数学中的x,y,不过在计算机中,变量可以是数字,也可以是任意数据类型 变量命名规则: (1)变量名只能由数字、大小写英文字母和下划线_组成,不能有任何符号,并且不能由数字开头...其中%s万能,它可以将其他所有类型都转换成字符串类型,如果输入文本中包含%,则用%%进行转义 举例说明: ?...(2)使用format()方法 用{}表示占位符,把之后传入的参数依次替换之前的{} 举例说明: ? 输出结果为: ?...原因在于在控制台输入的80其实为’80’,这是一个字符串类型,而 只能用于两个数字之间比较,所以就报错了 如何解决呢? 其实很简单,只需要加一代码即可,把字符串强制转换为数字类型就行了 ?

    1K20

    Linux系列--shell基础语法

    不能以数字开头: 变量名不能以数字开头,但可以包含数字。...避免使用空格: 变量名中不应该包含空格,因为空格通常用于分隔命令和参数。...,即等号后面的部分 tr 命令用于字符替换删除 tr -d ‘[ ]’ -d 参数表示删除指定字符,‘[ ]’ 表示空格,所以此命令将删除提取出的字符串中的所有空格 set 是流编辑器,用于对输入流进行各种文本转换操作...,例如【sed ‘s/\r//g’】‘s/\r//g’ 是一个替换命令,寻找每一结尾的回车符(\r),并将它们替换为空(即删除) [ !...如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢! Stay Hungry Stay Foolish 道阻且长,则将至,让我们一起加油吧!

    13210

    正则表达式

    (匹配) 过滤掉页面中的敏感词,或者个人信息(替换) 获取我们想要的特定部分(提取) 组成 普通字符 写啥匹配啥 大多数的字符仅表示它自身,例如所有的字母和数字 元字符 是一些具有特殊含义的字符,可以极大提高灵活性和匹配功能...如果有返回true,否则返回false。...exec方法 搜索匹配字符串 如果找到了结果是数组 没有找到结果是null 元字符 预定义类 \d 匹配 0-9 的任意一个数字 \D 匹配非 0-9 的数字 \w 匹配任意一个单词字符 a-z A-Z...0-9 下划线 \W 匹配任意非单词字符 \s 匹配不可见字符(空白,比如空格 换行\n 制表符\t ) \S 匹配可见字符 ....,必须用什么开头,用什么结尾 ^ 谁开始 $ 谁结束 // ^ 谁开始 // $ 谁结束 // 使用边界符进行精确匹配 console.log

    28620

    linux实战(一)

    实例 $ ls -l | grep '^a' 通过管道过滤ls -l输出的内容,只显示a开头。 $ grep 'test' d* 显示所有d开头的文件中包含test的。...my将被替换为**my**  \<      词首定位符        /\<my/  匹配包含my开头的单词的  \>      词尾定位符       /my\>/  匹配包含my结尾的单词的...地址的形式可以是数字、正则表达式、二者的结合。如果没有指定地址,sed将处理输入文件的所有。  地址是一个数字,则表示行号;是“$"符号,则表示最后一。...$ sed -n 's/^test/mytest/p' example (-n)选项和p标志一起使用表示只打印那些发生替换。也就是说,如果某一开头的test被替换成mytest,就打印它。...所有192.168.0.1开头的行都会被替换成它自已加localhost,变成192.168.0.1localhost。

    2.2K10

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    热门标签

    领券