我将本学期的多次php实验整理成了博客,将知识点一步步解析清楚。
文章目录
实验一
实验二 数组
实验三 PHP与Web交互
实验四 文件上传与字符串方法
实验一
了解PHP的语言基础,流程控制语句
一:定义变量a=100,b=25,分别将a和b进行加减乘除,将加减乘除的结果分别存放在变量add,sub,mul,div中,并输出结果。
输出格式如下所示:
a + b = 125
a - b = 75
a * b = 2500
a / b = 4
代码:
$a = 100 ;
$b = 25 ;
$add = $a + $b ;
$sub = $a - $b ;
$mul = $a * $b ;
$div = $a / $b ;
echo "a + b = $add " ;
echo "a - b = $sub " ;
echo "a * b = $mul " ;
echo "a / b = $div " ;
?>
几个知识点:
是php脚本开始的标志
?>
是php脚本结束的标志
php中每条语句,以;
结束
php中的变量名称需要使用$
和标识符表示,变量名区分大小写(而函数名称不区分大小写 )
最后四行是输出语句echo "";
其中,
是一个标签,作用:在页面中换行
双引号和单引号的区别:
它们都是用来定义字符串的
如果字符串中有变量值: 双引号:输出的是变量值 单引号:输出的是字符串(将变量看作字符串输出)
$a = 100 ;
echo "a = $a " ;
echo 'a = $a ' ;
?>
二:计算半径为12的圆的面积。
输出格式如下所示:
半径为12的圆的面积是:452.3893421
代码:
$r = 12 ;
$area = number_format ( $r * $r * pi ( ) , 7 ) ;
echo "半径为12的圆的面积是:$area " ;
?>
两个函数:
pi()
圆周率函数
number_format($erea, 7)
,保留$area
小数点后7位
三:已知小明每月工资8000元,每月需还银行房贷3500元,每月消费1000元,请通过编写PHP程序计算并输出每月总支出、剩余工资和房贷占工资的比例。
输出格式如下所示:
每月总支出:4500
剩余工资:3500
房贷占工资的比例:43.75%
代码:
$salary = 8000 ;
$housing_loan = 3500 ;
$consume = 1000 ;
$pay = $housing_loan + $consume ;
$odd_salary = $salary - $pay ;
$ratio = $housing_loan / $salary * 100 ;
echo "每月总支出:$pay " ;
echo "剩余工资:$odd_salary " ;
echo "房贷占工资的比例:" . $ratio . "% " ;
?>
第四个输出语句,还是可以这么写:
echo "房贷占工资的比例:$ratio % " ;
字符串连接符:
就是英文小数点.
,
例如"房贷占工资的比例:".$ratio."% "
这样看: "房贷占工资的比例:"
拼接$ratio
拼接"% "
四:计算200以内偶数的和,即求2+4+6+……+200的值。
输出格式如下所示:
200以内偶数的和是:10100
代码:
$sum = 0 ;
for ( $i = 2 ; $i <= 200 ; $i + = 2 ) {
$sum + = $i ;
}
echo "200以内偶数的和是:$sum " ;
?>
赋值运算符:
$i += 2
即:$i = $i + 2
$sum += $i
即:$sum = $sum + $i
本题考察的是循环哦
五:输出一个由*组成的三角形。
输出格式如下所示:
*
**
***
****
*****
代码:
for ( $i = 1 ; $i <= 5 ; $i ++ ) {
for ( $j = 1 ; $j <= $i ; $j ++ ) {
echo "*" ;
}
echo " " ;
}
?>
依旧是考察循环,其实双重循环也很好理解的,$i
代表列数,$j
代表行数,$j <= $i
决定了每一行的列数恰好等于其在第几行
六:输出九九乘法表。
输出格式如下所示:
1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
代码:
for ( $i = 1 ; $i < 10 ; $i ++ ) {
for ( $j = 1 ; $j <= $i ; $j ++ ) {
$mul = $i * $j ;
echo "$i * $j = $mul " ;
}
echo " " ;
}
?>
循环其实不复杂
它属于html实体,其实就是一个空格 我在上面代码中使用了四个空格,是为了把每一行的输出隔开四个空格,看的舒服些
提高:用表格输出九九乘法表。
这里要用到html、css的知识,有兴趣的可以看一看:
< style>
table{
border- collapse: collapse;
}
table caption{
font- size: 2 em;
font- weight: bold;
margin: 1 em 0 ;
}
td{
border: 1 px solid
text- align: center;
padding: 20 px;
}
table tbody{
color:
background- color:
}
table tbody tr: nth- child ( odd) {
background- color:
}
table tbody tr: hover{
background- color:
}
< / style>
echo '';
echo '九九乘法表 ' ;
echo '' ;
for ( $i = 1 ; $i < 10 ; $i ++ ) {
echo '';
for ( $j = 1 ; $j <= $i ; $j ++ ) {
$mul = $i * $j ;
echo ' ';
echo "$i * $j = $mul " ;
echo ' ';
}
echo ' ' ;
}
echo '' ;
echo '';
?>
实验二 数组
了解php语言的数组,并操作它
一:定义一个数组$arr,键值与内容见下图
为该数组添加一个元素,使其键值与内容下图
用echo输出pink,blown 用print_r和var_dump函数输出这个数组
代码:
$arr = array ( 'a' = > 'red' , 'b' = > 'blue' , 'c' = > 'pink' , 'd' = > 'yellow' ) ;
$arr [ 'f' ] = 'blown' ;
$arr [ ] = 'black' ;
echo $arr [ 'c' ] ;
echo ' ' ;
echo $arr [ 'f' ] ;
echo ' ' ;
print_r ( $arr ) ;
echo ' ' ;
var_dump ( $arr ) ;
?>
输出:
pink
blown
Array ( [ a] = > red [ b] = > blue [ c] = > pink [ d] = > yellow [ f] = > blown [ 0 ] = > black )
array ( 6 ) { [ "a" ] = > string ( 3 ) "red" [ "b" ] = > string ( 4 ) "blue" [ "c" ] = > string ( 4 ) "pink" [ "d" ] = > string ( 6 ) "yellow" [ "f" ] = > string ( 5 ) "blown" [ 0 ] = > string ( 5 ) "black" }
数组:
数组中的每个实体都包含两项:键和值
键:可以是数字、字符(包括:数字和字符串的组合)
值:可以是任意数据类型
创建一维数组:
一:
$arr [ key] = value;
$arr [ ] = value;
二:
$arr = array ( 'one' = > 'php' , 'two' = > 'python' ) ;
$arr = array ( 'c' , 'java' ) ;
输出数组:
print_r()
按一定键值和元素的顺序显示出该数组中所有元素
var_dump()
可以输出(或对象)、元素数量以及每个字符串的长度
二:定义二维数组,存储下表中的数据,并输出
品牌
库存
销量
Volvo
33
20
BMW
17
15
Saab
5
2
Land Rover
15
11
代码:
$arr [ 0 ] = array ( '品牌' , '库存' , '销量' ) ;
$arr [ 1 ] = array ( 'volvo' , 33 , 20 ) ;
$arr [ 2 ] = array ( 'BMW' , 17 , 15 ) ;
$arr [ 3 ] = array ( 'saab' , 5 , 2 ) ;
$arr [ 4 ] = array ( 'Land rover' , 15 , 11 ) ;
foreach ( $arr as $key = > $value ) {
foreach ( $value as $keys = > $values ) {
echo ' ' ;
echo $values ;
echo ' ' ;
}
echo ' ' ;
}
?>
输出:
品牌 库存 销量
volvo 33 20
BMW 17 15
saab 5 2
Land rover 15 11
foreach(遍历数组的简单办法):
foreach ( array_expression as $value )
statement
foreach ( array_expression as $key = > $value )
statement
foreach语句将遍历数组array_expression,每次循环时,将当前数组中的值赋给$value
(或者是$key
、$value
),同时,数组指针向后移动,直到遍历结束。
实验三 PHP与Web交互
一:设计一个系统登录页面login.php,登录后跳转到另一个页面loginok.php显示登录信息。
先看这个知识点:
$_POST[]
、$_GET[]
可以获取表单提交的数据
login.php
< form action = " loginok.php" method = " post" >
< div>
用户名:< input type = " text" name = " user" >
div>
< div>
密码 :< input type = " password" name = " password" >
div>
< div>
< input type = " submit" name = " submit" value = " 登录" >
div>
form>
loginok.php
if ( isset ( $_POST [ 'submit' ] ) && $_POST [ 'submit' ] == '登录' ) {
echo '用户名:' . $_POST [ 'user' ] . ' ' ;
echo '密码 :' . $_POST [ 'password' ] ;
}
?>
输入: 点击登录后:
二:设计一个php网页test1.php,用来进行投票。在另一个网页testok.php显示投票结果。
test1.php
< form action = " testok.php" method = " get" >
< div style =" font-weight : bold; font-size : 16px" > 当今最流行的web开发技术 div>
< input type = " checkbox" name = " zgh[]" value = " PHP" > PHP< br>
< input type = " checkbox" name = " zgh[]" value = " ASP" > ASP< br>
< input type = " checkbox" name = " zgh[]" value = " JSP" > JSP< br>
< input type = " checkbox" name = " zgh[]" value = " JSP.NET" > JSP.NET< br>
< input type = " submit" name = " submit" value = " 请投票" >
form>
testok.php
if ( isset ( $_GET [ 'submit' ] ) && $_GET [ 'submit' ] == '请投票' ) {
foreach ( $_GET [ 'zgh' ] as $value ) {
echo $value . ' ' ;
}
}
?>
选择
点击请投票后 三:设计一个注册页面reg.php,当点击提交时,跳转到另一个页面regok.php,显示用户的注册信息。
先看这个知识点:
int preg_match ( string $pattern , string $subject )
用于执行一个正则表达式匹配
$pattern
: 要搜索的模式,字符串形式。
$subject
: 输入字符串。
reg.php
< div style =" font-weight : bold; margin : 20px 0" > 用户注册 div>
< form action = " regok.php" method = " GET" >
< div> 用户名:< input type = " text" name = " user" > (必填,3-15字符长度,支持汉字、字母、数字及_) div>
< div> 密码:< input type = " password" name = " password" > (必填,不得少于6位) div>
< div> 重复密码:< input type = " password" name = " retry" > div>
< div> 电子邮箱:< input type = " text" name = " mail" > (必填) div>
< input type = " submit" value = " 提交注册" name = " submit" >
form>
regok.php
if ( isset ( $_GET [ 'submit' ] ) && $_GET [ 'submit' ] == '提交注册' ) {
if ( ! preg_match ( "/^[\u4E00-\u9FA5A-Za-z0-9_]{3,15}$/" , $_GET [ 'user' ] ) ) {
echo '用户名格式错误!' ;
}
if ( ! preg_match ( "/^\w{6,}$/" , $_GET [ 'password' ] ) ) {
echo '密码格式错误!' ;
}
if ( $_GET [ 'password' ] != $_GET [ 'retry' ] ) {
echo '两次密码不匹配' ;
}
if ( ! preg_match ( "/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/" , $_GET [ 'mail' ] ) ) {
echo '邮箱格式不对!' ;
}
else {
echo '注册成功' ;
}
}
?>
输入: 点击提交注册
实验四 文件上传与字符串方法
一:实现jpg格式的文件上传,检验文件的格式,如果是jpg格式的图片,则上传到image文件夹,不是,则弹出提示。
先看这几个知识点:
$_FILES['filename']
是一个一维数组,包含所有上传文件的相关信息
$_FILES['filename']['name']
上传文件的文件名
$_FILES['filename']['tmp_name']
文件在临时目录中使用的文件名,因为文件在上传时,首先要将其以临时文件的身份保存在临时目录中
$_FILES['filename']['type']
上传文件类型
$_FILES['filename']['size']
上传文件大小,单位为字节
$_FILES['filename']['error']
如果返回0,则说明上传文件成功
代码:
< form action= "" enctype= "multipart/form-data" method= "POST" >
请选择你要上传的文件:< input type= "file" name= "isjpg" >
< input type= "submit" name= "submit" value= "上传" >
< / form>
if ( ! empty ( $_FILES [ 'isjpg' ] [ 'name' ] ) ) {
$type = substr ( $_FILES [ 'isjpg' ] [ 'name' ] , - 3 , 3 ) ;
if ( 'jpg' == $type ) {
$path = "image/" . $_FILES [ 'isjpg' ] [ 'name' ] ;
if ( move_uploaded_file ( $_FILES [ 'isjpg' ] [ 'tmp_name' ] , $path ) ) {
echo '文件上传成功' ;
} else {
echo '文件无法上传到指定位置!' ;
}
}
else {
echo '文件上传类型错误!' ;
}
}
?>
注意啊:判断文件类型时,不要使用$_FILES['filename']['type']
,因为这坑爹玩意和系统有关系,有的系统中jpg文件的值是image/jpeg
,有的系统中的值是image/pjpeg
…
最好使用截取字符串的方法,截取文件名后三位,来判断文件类型
substr ( string str, int start[ , int length] )
str 指定字符串对象
start 用来指定开始截取字符串的位置
length 可选项,指定截取字符串的个数(如果为负数,则表示截取到倒数第length个字符)
move_uploaded_file ( string filename, string destination)
用于将文件上传到服务器的指定位置,若成功,则返回true。
filename,上传文件的临时文件名$_FILES['filename']['tmp_name']
destination,上传文件保存的新路径和名称
二:在下面这篇文章里,将用户输入的文字红色高亮显示。
大数据与人工智能之间存在着一种互惠关系:人工智能在很大程度上依赖于前者的成功,同时也帮助组织以以前繁琐或不可能的方式释放数据存储中的潜力。Gruber说,“如今,我们需要尽可能多的数据,这不仅是为了更好地洞察我们试图解决的业务问题,而且因为我们通过机器学习模型输入的数据越多,它们得到的结果就越好。这是一个良性循环。”
先看这个知识点:
$_POST[]
、$_GET[]
可以获取表单提交的数据
代码:
< form action= "" method= "get" >
< input type= "text" name= "key" >
< input type= "submit" name= "submit" value= "提交" >
< / form>
if ( isset ( $_GET [ 'key' ] ) && ( $_GET [ 'submit' ] == '提交' ) ) {
$content = "大数据与人工智能之间存在着一种互惠关系:人工智能在很大程度上依赖于前者的成功,同时也帮助组织以以前繁琐或不可能的方式释放数据存储中的潜力。Gruber说,“如今,我们需要尽可能多的数据,这不仅是为了更好地洞察我们试图解决的业务问题,而且因为我们通过机器学习模型输入的数据越多,它们得到的结果就越好。这是一个良性循环。”" ;
$str = $_GET [ 'key' ] ;
echo str_ireplace ( $str , "" . $str . '' , $content ) ;
}
?>
输入: 点击提交之后:
str_ireplace ( mixed search, mixed replace, mixed subject[ , int & count] )
将所有在参数subject中出现的参数search,以参数replace替换
参数&count表示替换字符串执行的次数
你可能感兴趣的:(PHP)
PHP会务会议系统小程序源码
云启软件
PHP商业系统 小程序 uni-app vue php
会务会议系统一款基于ThinkPHP+Uniapp框架,精心雕琢的会议管理微信小程序,专为各类高端会议场景量身打造。它犹如一把开启智慧殿堂的金钥匙,为会议流程优化、开支精细化管理、数量精准控制、标准严格设定以及供应商严格筛选等关键环节,铺设了一条标准化的高速公路。这一创新之举,不仅引领我们步入了量化成本节约的新时代,更在风险有效缓解与服务质量显著提升方面,树立了业界的全新标杆。会务平台——会议管理
PHP搜索引擎WindSearch,新增Faker伪数据生成功能
WindSearch是一个基于中文分词,由纯PHP开发全文检索引擎,可快速搭建PHP站点的站内搜索,他没有任何繁琐的安装配置、不需要维护调优、不占用服务器内存、可与PHP项目完美融合在一起。Faker数据生成安装导入//将WindSearch代码下载到本地,再像下面这样引入require_once'yourdirname/windsearch/vendor/autoload.php';开始生成//
ubuntu终端常用快捷键
superyuanzhe
linux linux
转自http://forum.ubuntu.org.cn/viewtopic.php?f=86&t=318908今天看到一个有关快捷键的帖子,觉得不错,粘过来大家看看:BashShell快捷键l:删除从光标到行尾的部分l:删除从光标到行首的部分l:删除从光标到当前单词结尾的部分l:删除从光标到当前单词开头的部分l:将光标移到行首l:将光标移到行尾l:将光标移到当前单词头部l:将光标移到当前单词尾部
mac+php5.3的docker-compose.yml分享
自娱自乐22
docker
version:'3'services:nginx:image:nginx:latestcontainer_name:nginx-composevolumes:-./wwwroot:/usr/share/nginx/html:rw-./nginx/nginx/:/etc/nginx/:rw-./log/nginx:/var/log/nginx:rwrestart:alwayslinks:-phpp
mac下docker搭建nginx+php+mysql,并实现nginx负载均衡
自娱自乐22
macos docker nginx 负载均衡 php
一环境系统:macOSSonoma14.3芯片:AppleM3Prodocker版本:25.0.5二软件OrbStack[推荐,一款轻量化的docker管理软件,还是docker的命令]item2三步骤拉取nginx镜像dockerpullnginx新建一个nginx容器dockerrun--namenginx5-d-p80:80nginx确认nginx内部的目录[第一次一定要确认下目录]-配置目
PHP全文检索引擎WindSearch,新增“即用模式”
WindSearch是一个可以跟php项目完美融合的全文检索引擎,它由纯PHP开发,相比ES,WS无内存占用,无需维护,没有任何繁琐的安装配置,同时又拥有强大的索引跟搜索能力,总的来说,ES常用的功能它都有,但WS更轻量,更方便。WindSearch2.0版本新增“即用模式”,简单搜索场景下,导入、搜索等操作,更加简单直接,无需任何配置。即用模式导入、搜索操作的代码示例:导入数据//实例化对象$W
2025年全国CTF夺旗赛-从零基础入门到竞赛,看这一篇就稳了!
白帽安全-黑客4148
安全 web安全 网络 网络安全 CTF
目录一、CTF简介二、CTF竞赛模式三、CTF各大题型简介四、CTF学习路线4.1、初期1、html+css+js(2-3天)2、apache+php(4-5天)3、mysql(2-3天)4、python(2-3天)5、burpsuite(1-2天)4.2、中期1、SQL注入(7-8天)2、文件上传(7-8天)3、其他漏洞(14-15天)4.3、后期五、CTF学习资源5.1、CTF赛题复现平台5.
2025年全国CTF夺旗赛-从零基础入门到竞赛,看这一篇就稳了!
白帽安全-黑客4148
网络安全 web安全 linux 密码学 CTF
目录一、CTF简介二、CTF竞赛模式三、CTF各大题型简介四、CTF学习路线4.1、初期1、html+css+js(2-3天)2、apache+php(4-5天)3、mysql(2-3天)4、python(2-3天)5、burpsuite(1-2天)4.2、中期1、SQL注入(7-8天)2、文件上传(7-8天)3、其他漏洞(14-15天)4.3、后期五、CTF学习资源5.1、CTF赛题复现平台5.
【2025年】全国CTF夺旗赛-从零基础入门到竞赛,看这一篇就稳了!
网安詹姆斯
web安全 CTF 网络安全大赛 python linux
【2025年】全国CTF夺旗赛-从零基础入门到竞赛,看这一篇就稳了!基于入门网络安全/黑客打造的:黑客&网络安全入门&进阶学习资源包目录一、CTF简介二、CTF竞赛模式三、CTF各大题型简介四、CTF学习路线4.1、初期1、html+css+js(2-3天)2、apache+php(4-5天)3、mysql(2-3天)4、python(2-3天)5、burpsuite(1-2天)4.2、中期1、S
MXTU MAX 苹果cmsv10模板 仿毒舌自适应主题/短视X体验版完全开源
希希分享
软希网58soho_cn 源码资源 仿毒舌自适应主题/
基于MxonePro二开的主题,全开源未加密。MXTUMAX仿毒舌苹果CMS影视自适应主题主题说明:1、将mxtheme目录放置根目录|将mxpro目录放置template文件夹中2、苹果cms后台-系统-网站参数配置-网站模板-选择mxpro模板目录填写html3、网站模板选择好之后一定要先访问前台,然后再进入后台设置4、主题后台地址:MXTUMAX图图主题,/admin.php/admin/m
学习路之微服务--PHP中实现微服务几种方式
hopetomorrow
微服务 学习 微服务 php
学习路之微服务--PHP中实现微服务实现微服务是一种将应用程序拆分成小型、独立的服务,每个服务都专注于完成特定的业务功能。通过这种方式,可以实现系统的高可伸缩性、可靠性和可维护性。在PHP中实现微服务可以采用以下几种方法:使用框架和组件:PHP提供了许多流行的框架和组件,如Laravel、Symfony和Lumen等,这些框架提供了许多开箱即用的功能,可以简化微服务的开发。可以使用这些框架来创建独
ThinkPHP接入PayPal支付
ETO_冬
thinkphp PayPal
ThinkPHP5接入PayPal支付,PayPal的流程是服务器请求Paypal的接口下单(需要传订单id/支付成功的重定向地址/支付失败的重定向地址),接会返回一个支付地址,项目服务器把地址返给用户,用户打开链接登录Paypal完成付款,然后Paypal给重定向到指定地址。在paypal官网开通商户号,设置通知地址。开通沙箱模式用于测试,后台会给沙箱模式生成商户账号和用户账号,请注意区分。申请
PHP 高级过滤器
宇哥资料
php php android 开发语言
检测一个数字是否在一个范围内以下实例使用了filter_var()函数来检测一个INT型的变量是否在1到200内:实例array("min_range"=>$min,"max_range"=>$max)))===false){echo("变量值不在合法范围内");}else{echo("变量值在合法范围内");}?>尝试一下»检测IPv6地址以下实例使用了filter_var()函数来检测一个$i
文件包含lfi.php使用
三和三千万
网络安全 安全
使用这个脚本的前提是有文件包含点,也可以访问到phpinfo页面#!/usr/bin/pythonimportsysimportthreadingimportsocketdefsetup(host,port):TAG="SecurityTest"PAYLOAD="""%s\r')?>\r"""%TAGREQ1_DATA="""-----------------------------7dbff1d
Perl特殊变量
pengwentao
perl 正则表达式 操作系统相关 io bugs 脚本
来源:ChinaUnix博客日期:2007.11.2607:49http://blog.chinaunix.net/u/8985/index.php最新版本可以从这里获取(POD格式):http://svn.perlchina.org/trunk/POD2-CN/lib/POD2/CN/perlvar.podNAMEperlvar-Perl预定义变量DESCRIPTION预定义名称后面列出的名称对
PHP网站常见的架构有哪些?使用场景是什么?底层原理是什么?
快点好好学习吧
PHP php 架构 开发语言
PHP网站的架构设计对于确保网站的性能、可扩展性和可维护性至关重要。根据不同的业务需求和规模,可以选择不同的架构模式。1.单体架构(MonolithicArchitecture)1.1定义单体架构:将整个应用程序作为一个单一的单元进行开发、部署和运行。所有的功能模块都在同一个代码库中,共享同一个数据库。1.2使用场景小型项目:适合功能简单、用户量较少的小型网站。快速原型开发:适合快速开发和测试原型
麒麟服务器v10系统安装时报错,银河麒麟V10服务器版本编译安装php7.2.12
护城河河长
麒麟服务器v10系统安装时报错
上传tar包php-7.2.12.tar.gztar-zxvfphp-7.2.12.tar.gzcdphp-7.2.12./configure--prefix=/home/kookserver/php--with-config-file-path=/home/kookserver/php/etc--with-config-file-scan-dir=/home/kookserver/php/etc
【php】php json_encode($arr) 和 json_encode($arr, 320) 有什么区别?
小镇学者
PHP php json 开发语言
在PHP中,json_encode()函数用于将PHP变量(通常是数组或对象)编码为JSON格式的字符串。json_encode($arr)和json_encode($arr,320)的区别主要在于第二个参数,该参数是一个由多个JSON_*常量按位或(|)组合而成的选项掩码,用于控制编码过程中的行为。1.json_encode($arr)当只传递一个参数时,即json_encode($arr),它
渗透测试工具包 开源安全测试工具 网络安全工具_网络安全渗透测试工具(1)
2401_84254011
程序员 安全 开源 测试工具
hackUtils-它是一个用于渗透测试和网络安全研究的黑客工具包,渗透以及web攻击脚本。msf框架:pocsscan攻击框架Pocsuite攻击框架Beebeeto攻击框架漏洞POC&EXP-ExploitDB官方git版本。php漏洞代码分析ysoserial-JAVA反序列化POC生成工具:JavaUnserializeExploits-JAVA反序列化EXP。JenkinsCommonC
python函数名是变量_Python 变量做函数名的简单示例
weixin_39759995
python函数名是变量
这篇文章主要为大家详细介绍了Python变量做函数名的简单示例,具有一定的参考价值,可以用来参考一下。对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧!PHP有变量函数这一用法(见http://www.php.net/manual/en/functions.variable-functions.php)即有一字符串变量现在想用这个变量的值做为某函数名来调用代码如
小狐狸3.1.2版本源码,新增deepseek接口
CSDN专家-微编程
PHP源码 PHP 人工智能
小狐狸3.1.2版本源码,新增deepseek接口文件夹说明:1、后端:文件夹是后台文件2、.sql文件是数据库文件后台安装步骤:1、在宝塔新建个站点,php版本使用7.4,将“后端”文件夹里的文件上传到站点根目录,运行目录设置为/public2、导入数据库文件,数据库文件是/db.sql3、修改数据库连接配置,配置文件是/.env4、正式使用时,请把调试模式关闭:/.env文件第一行,true改
superbuy反向海淘代购集运系统PHP搭建攻略
代码逐梦人
反向海淘知识地图 php 开发语言
搭建一个类似于Superbuy的反向海淘代购集运系统需要结合多个功能模块,包括用户管理、商品代购、订单管理、物流跟踪、支付接口等。以下是使用PHP搭建这样一个系统的基本攻略。1.系统功能模块设计一个完整的反向海淘代购集运系统通常包括以下模块:1.1用户模块【复制taobaoapi2014获取演示站示例】用户注册/登录用户信息管理(收货地址、支付方式等)用户积分/优惠券管理1.2商品代购模块商品搜索
linux查找文件里面的内容,快捷键
德玛西亚没有明天
vimaa.php输入/keyword,keyword是需要查找的关键字,按Enter健,进行搜索关键字;按键n跳至下一个匹配
云贝餐饮最新v3全开源独立版源码
kaui52066
php python java 开源 开源软件
云贝餐饮v3连锁独立版本全新UI后台运营独立版无bug最新适配头像昵称接口有视频安装教程安装环境:PHP8.0MySQL5.6-5.7
安全面试1
白初&
面试题目总结 安全 面试 网络
目录渗透的流程信息收集如何处理子域名爆破的泛解析问题泛解析判断泛解析的存在处理泛解析的策略如何绕过CDN查找真实ipphpinfo中常见的敏感信息权限维持Windows权限维持Linux权限维持技术跨平台权限维持技术检测和防御输出到href的XSS如何防御samesite防御CSRF的原理SameSite的工作原理CSRF防御json格式的CSRF如何防御浏览器解析顺序和解码顺序解析顺序解码顺序过
Dest1ny漏洞库:用友 U8-CRM 系统 ajaxgetborrowdata.php 存在 SQL 注入漏洞
Dest1ny(信息安全业务随时dd)
php sql 开发语言 web安全 经验分享 安全 网络安全
大家好,今天是Dest1ny漏洞库的专题!!会时不时发送新的漏洞资讯!!大家多多关注,多多点赞!!!用友U8-CRM系统ajaxgetborrowdata.php存在SQL注入漏洞,文件多个方法存在SQL注入漏洞,未经身份验证的攻击者通过漏洞执行任意SQL语句,调用xp_cmdshell写入后门文件,执行任意代码,从而获取到服务器权限。hunterapp.name="用友CRM"fofatitle
2024最新小狐狸AI 免授权源码
希希分享
软希网58soho_cn 小狐狸AI 免授权源码
后台安装步骤:1、在宝塔新建个站点,php版本使用7.2、7.3或7.4,把压缩包上传到站点根目录,运行目录设置为/public2、导入数据库文件,数据库文件是/db.sql3、修改数据库连接配置,配置文件是/.env4、正式使用时,请把调试模式关闭:/.env文件第一行,true改成false5、超管后台地址:http://域名/super初始账号密码:super密码123456及时修改6、用户
ssm毕业设计基于SSM框架的中医养生系统设计与实现[文档+开题+PPT
IT实战课堂
课程设计
选题推荐——以防找不到我们,点击上方订阅专栏✌✌\Java毕设实战项目Python毕设项目源代码asp.net毕业设计项目Uniapp安卓毕业设计项目node.js毕业设计项目python毕业设计微信小程序毕业设计项目php毕业设计文末获取源码联系一、项目介绍1.1研究背景现在大家正处于互联网加的时代,这个时代它就是一个信息内容无比丰富,信息处理与管理变得越加高效的网络化的时代,这个时代让大家的生
编译安装php7.2
raoxiaoya
PHP php 服务器 开发语言
编译安装php7.2centos-7.064groupaddwwwuseradd-gwwwwww1、先安装如下依赖包yuminstall-ygccgcc-c++makezlibzlib-develpcrepcre-devellibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-devellibxml2libxml2-develglibcgli
centos 编译安装php 7.0
$Elvin
php centos
第一步:安装依赖yuminstall-ygccgcc-c++makecmakebisonautoconfwgetlrzszyuminstall-ylibtoollibtool-ltdl-develyuminstall-yfreetype-devellibjpeg.x86_64libjpeg-devellibpng-develgd-develyuminstall-ypython-develpatch
java类加载顺序
3213213333332132
java
package com.demo;
/**
* @Description 类加载顺序
* @author FuJianyong
* 2015-2-6上午11:21:37
*/
public class ClassLoaderSequence {
String s1 = "成员属性";
static String s2 = "
Hibernate与mybitas的比较
BlueSkator
sql Hibernate 框架 ibatis orm
第一章 Hibernate与MyBatis
Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。
MyBatis 参考资料官网:http:
php多维数组排序以及实际工作中的应用
dcj3sjt126com
PHP usort uasort
自定义排序函数返回false或负数意味着第一个参数应该排在第二个参数的前面, 正数或true反之, 0相等usort不保存键名uasort 键名会保存下来uksort 排序是对键名进行的
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8&q
DOM改变字体大小
周华华
前端
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
c3p0的配置
g21121
c3p0
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0的下载地址是:http://sourceforge.net/projects/c3p0/这里可以下载到c3p0最新版本。
以在spring中配置dataSource为例:
<!-- spring加载资源文件 -->
<bean name="prope
Java获取工程路径的几种方法
510888780
java
第一种:
File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin
获取当前类的所在工程路径;
如果不加“
在类Unix系统下实现SSH免密码登录服务器
Harry642
免密 ssh
1.客户机
(1)执行ssh-keygen -t rsa -C "
[email protected] "生成公钥,xxx为自定义大email地址
(2)执行scp ~/.ssh/id_rsa.pub root@xxxxxxxxx:/tmp将公钥拷贝到服务器上,xxx为服务器地址
(3)执行cat
Java新手入门的30个基本概念一
aijuans
java java 入门 新手
在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。 Java概述: 目前Java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,Java不适合
Memcached for windows 简单介绍
antlove
java Web windows cache memcached
1. 安装memcached server
a. 下载memcached-1.2.6-win32-bin.zip
b. 解压缩,dos 窗口切换到 memcached.exe所在目录,运行memcached.exe -d install
c.启动memcached Server,直接在dos窗口键入 net start "memcached Server&quo
数据库对象的视图和索引
百合不是茶
索引 oeacle数据库 视图
视图
视图是从一个表或视图导出的表,也可以是从多个表或视图导出的表。视图是一个虚表,数据库不对视图所对应的数据进行实际存储,只存储视图的定义,对视图的数据进行操作时,只能将字段定义为视图,不能将具体的数据定义为视图
为什么oracle需要视图;
&
Mockito(一) --入门篇
bijian1013
持续集成 mockito 单元测试
Mockito是一个针对Java的mocking框架,它与EasyMock和jMock很相似,但是通过在执行后校验什么已经被调用,它消除了对期望 行为(expectations)的需要。其它的mocking库需要你在执行前记录期望行为(expectations),而这导致了丑陋的初始化代码。
&nb
精通Oracle10编程SQL(5)SQL函数
bijian1013
oracle 数据库 plsql
/*
* SQL函数
*/
--数字函数
--ABS(n):返回数字n的绝对值
declare
v_abs number(6,2);
begin
v_abs:=abs(&no);
dbms_output.put_line('绝对值:'||v_abs);
end;
--ACOS(n):返回数字n的反余弦值,输入值的范围是-1~1,输出值的单位为弧度
【Log4j一】Log4j总体介绍
bit1129
log4j
Log4j组件:Logger、Appender、Layout
Log4j核心包含三个组件:logger、appender和layout。这三个组件协作提供日志功能:
日志的输出目标
日志的输出格式
日志的输出级别(是否抑制日志的输出)
logger继承特性
A logger is said to be an ancestor of anothe
Java IO笔记
白糖_
java
public static void main(String[] args) throws IOException {
//输入流
InputStream in = Test.class.getResourceAsStream("/test");
InputStreamReader isr = new InputStreamReader(in);
Bu
Docker 监控
ronin47
docker监控
目前项目内部署了docker,于是涉及到关于监控的事情,参考一些经典实例以及一些自己的想法,总结一下思路。 1、关于监控的内容 监控宿主机本身
监控宿主机本身还是比较简单的,同其他服务器监控类似,对cpu、network、io、disk等做通用的检查,这里不再细说。
额外的,因为是docker的
java-顺时针打印图形
bylijinnan
java
一个画图程序 要求打印出:
1.int i=5;
2.1 2 3 4 5
3.16 17 18 19 6
4.15 24 25 20 7
5.14 23 22 21 8
6.13 12 11 10 9
7.
8.int i=6
9.1 2 3 4 5 6
10.20 21 22 23 24 7
11.19
关于iReport汉化版强制使用英文的配置方法
Kai_Ge
iReport汉化 英文版
对于那些具有强迫症的工程师来说,软件汉化固然好用,但是汉化不完整却极为头疼,本方法针对iReport汉化不完整的情况,强制使用英文版,方法如下:
在 iReport 安装路径下的 etc/ireport.conf 里增加红色部分启动参数,即可变为英文版。
# ${HOME} will be replaced by user home directory accordin
[并行计算]论宇宙的可计算性
comsci
并行计算
现在我们知道,一个涡旋系统具有并行计算能力.按照自然运动理论,这个系统也同时具有存储能力,同时具备计算和存储能力的系统,在某种条件下一般都会产生意识......
那么,这种概念让我们推论出一个结论
&nb
用OpenGL实现无限循环的coverflow
dai_lm
android coverflow
网上找了很久,都是用Gallery实现的,效果不是很满意,结果发现这个用OpenGL实现的,稍微修改了一下源码,实现了无限循环功能
源码地址:
https://github.com/jackfengji/glcoverflow
public class CoverFlowOpenGL extends GLSurfaceView implements
GLSurfaceV
JAVA数据计算的几个解决方案1
datamachine
java Hibernate 计算
老大丢过来的软件跑了10天,摸到点门道,正好跟以前攒的私房有关联,整理存档。
-----------------------------华丽的分割线-------------------------------------
数据计算层是指介于数据存储和应用程序之间,负责计算数据存储层的数据,并将计算结果返回应用程序的层次。J
&nbs
简单的用户授权系统,利用给user表添加一个字段标识管理员的方式
dcj3sjt126com
yii
怎么创建一个简单的(非 RBAC)用户授权系统
通过查看论坛,我发现这是一个常见的问题,所以我决定写这篇文章。
本文只包括授权系统.假设你已经知道怎么创建身份验证系统(登录)。 数据库
首先在 user 表创建一个新的字段(integer 类型),字段名 'accessLevel',它定义了用户的访问权限 扩展 CWebUser 类
在配置文件(一般为 protecte
未选之路
dcj3sjt126com
诗
作者:罗伯特*费罗斯特
黄色的树林里分出两条路,
可惜我不能同时去涉足,
我在那路口久久伫立,
我向着一条路极目望去,
直到它消失在丛林深处.
但我却选了另外一条路,
它荒草萋萋,十分幽寂;
显得更诱人,更美丽,
虽然在这两条小路上,
都很少留下旅人的足迹.
那天清晨落叶满地,
两条路都未见脚印痕迹.
呵,留下一条路等改日再
Java处理15位身份证变18位
蕃薯耀
18位身份证变15位 15位身份证变18位 身份证转换
15位身份证变18位,18位身份证变15位
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
SpringMVC4零配置--应用上下文配置【AppConfig】
hanqunfeng
springmvc4
从spring3.0开始,Spring将JavaConfig整合到核心模块,普通的POJO只需要标注@Configuration注解,就可以成为spring配置类,并通过在方法上标注@Bean注解的方式注入bean。
Xml配置和Java类配置对比如下:
applicationContext-AppConfig.xml
<!-- 激活自动代理功能 参看:
Android中webview跟JAVASCRIPT中的交互
jackyrong
JavaScript html android 脚本
在android的应用程序中,可以直接调用webview中的javascript代码,而webview中的javascript代码,也可以去调用ANDROID应用程序(也就是JAVA部分的代码).下面举例说明之:
1 JAVASCRIPT脚本调用android程序
要在webview中,调用addJavascriptInterface(OBJ,int
8个最佳Web开发资源推荐
lampcy
编程 Web 程序员
Web开发对程序员来说是一项较为复杂的工作,程序员需要快速地满足用户需求。如今很多的在线资源可以给程序员提供帮助,比如指导手册、在线课程和一些参考资料,而且这些资源基本都是免费和适合初学者的。无论你是需要选择一门新的编程语言,或是了解最新的标准,还是需要从其他地方找到一些灵感,我们这里为你整理了一些很好的Web开发资源,帮助你更成功地进行Web开发。
这里列出10个最佳Web开发资源,它们都是受
架构师之面试------jdk的hashMap实现
nannan408
HashMap
1.前言。
如题。
2.详述。
(1)hashMap算法就是数组链表。数组存放的元素是键值对。jdk通过移位算法(其实也就是简单的加乘算法),如下代码来生成数组下标(生成后indexFor一下就成下标了)。
static int hash(int h)
{
h ^= (h >>> 20) ^ (h >>>
html禁止清除input文本输入缓存
Rainbow702
html 缓存 input 输入框 change
多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录。
如果不想让浏览器缓存input的值,有2种方法:
方法一: 在不想使用缓存的input中添加 autocomplete="off";
<input type="text" autocomplete="off" n
POJO和JavaBean的区别和联系
tjmljw
POJO java beans
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规
java中单例的五种写法
liuxiaoling
java 单例
/**
* 单例模式的五种写法:
* 1、懒汉
* 2、恶汉
* 3、静态内部类
* 4、枚举
* 5、双重校验锁
*/
/**
* 五、 双重校验锁,在当前的内存模型中无效
*/
class LockSingleton
{
private volatile static LockSingleton singleton;
pri