十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在php中获取数组长度方法很简单,php为我们提供了两个函数可以计算一维数组长度,如count,sizeof都可以直接统计数组长度哦,下面我们来看几个实例吧。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的海城网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
php如何获取数组的长度,使用php函数count(),或是sizeof()
例如:
复制代码
代码如下:
$arr
=
Array('0','1','2','3','4');
echo
count($arr);
//
输出
5
$arr
=
array('A','B','C');
echo
sizeof($arr);
//输出3
sizeof()和count()具有同样的用途,这两个函数都可以返回数组元素个数.可以得到一个常规标量变量中的元素个数,如果传递给这个函数的数组是一个空数组,或者是一个没有经过设定的变量,返回的数组元素个数就是0;
两函数功能一样,手册上讲,sizeof()是函数count()的别名。
那么多维数组长度要怎么统计呢?继续看例子
比如你读取的数组是一个二维数组:
复制代码
代码如下:
?php
$arr=array(
0=array('title'
=
'新闻1',
'viewnum'
=
123,
'content'
=
'ZAQXSWedcrfv'),
1=array('title'
=
'新闻2',
'viewnum'
=
99,
'content'
=
'QWERTYUIOPZXCVBNM')
);
?
如果你想统计数组$arr的长度,也就是说该二维数组只有两条新闻,你想要的数字也是2,但是如果使用count($arr)不同版本的php,统计的结果是不一样的;
后来在php手册中发现,count函数还有第二个参数,解释如下:
count函数有两个参数:
0(或COUNT_NORMAL)为默认,不检测多维数组(数组中的数组);
1(或COUNT_RECURSIVE)为检测多维数组,
所以如果要判断读取的数组$arr是不是有新闻信息,就要这样写了:
复制代码
代码如下:
?php
if(is_array($arr)
count($arr,COUNT_NORMAL)0
)
{
.....
}
else
{
.....
}
?
你可以使用这样的代码来测试该函数:
复制代码
代码如下:
?php
$arr=array(
0=array('title'
=
'新闻1',
'viewnum'
=
123,
'content'
=
'ZAQXSWedcrfv'),
1=array('title'
=
'新闻2',
'viewnum'
=
99,
'content'
=
'QWERTYUIOPZXCVBNM')
);
echo
'不统计多维数组:'.count($arr,0);//count($arr,COUNT_NORMAL)
echo
"br/";
echo
'统计多维数组:'.count($arr,1);//count($arr,COUNT_RECURSIVE)
?
到最后输出时用substr截取一下就行了
例如取得title的字符后赋到$title,然后$subtitle=substr($title,0,30)."..."
$subtitle就是头30个字符
获取一维数组:
count()和sizeof() 都可以直接统计一维数组长度。示例如下:
$arr = Array('0','1','2','3','4','5','6','7','8','9'); echo count($arr); // 输出10
$arr = array('苹果','香蕉','桔子','西瓜','梨','葡萄'); echo sizeof($arr); // 输出6
获取二维数组长度:
count()函数有两个参数:
count($arr,COUNT_NORMAL); //默认,不检测多维数组
count($arr,COUNT_RECURSIVE); //检测多维数组
例子:
$arr = array(
0=array('name'='kong','age'='18'),
1=array('name'='liang','age'='30')
);
count($arr) = 2;
count($arr,COUNT_RECURSIVE) = 6;
扩展资料:
PHP 在数据库方面的丰富支持,也是它迅速走红的原因之一,它支持下列的数据库或是数据文件:
Adabas 、D、 DBA、dBase 、dbm 、filePro 、Informix 、InterBase、mSQL 、Microsoft SQL Server、·MySQL、Solid、Sybase、 Oracle 、PostgreSQL
今时今日,数据库系统已经成为各个动态网站上 web 应用程序的重要组成部分。由于非常敏感和机密的数据有可能保存在数据库中,所以对数据库实施保护就显得尤为重要了。
要从数据库中提取或者存入数据,就必须经过连接数据库、发送一条合法查询、获取结果、关闭连接等步骤。目前,能完成这一系列动作的最常用的查询语言是结构化查询语言 Structured Query Language (SQL)。可以看看攻击者是如何篡改 SQL 查询语句的。
参考资料:百度百科-PHP
暴字段长度命令如下
Order by num/*
另完整的手工注入过程如下:
首先要做的是在判断好字段数后,爆破用户信息,注入的过程中如果当前数据库连接用户为root或者具有root权限就可以尝试使用loadfile()这个函数来读取文件。
一、在linux下我们可以读取/etc/passwd和/etc/shadow来暴力破解linux密码
二、在windows下我们可以读取一些常见的文件以及敏感的地方比如serv-u的配置文件my.ini等等,然后就是一一破解字段和字段内容即可。
第二种情况通过version()函数得知mysql版本在5.0以上,那么可以使用mysql自带的information_schema这个数据库来查询所有的表,然后也是一一破解字段和字段内容即可。
最不好的情况(目前很少了)就是权限不是root,数据库版本过低,那么所有的表,字段都是要自己猜解的,没有工具的情况下,会让工作量加大几十倍,还不一定能猜到,让人汗颜。
所以有工具还是很方便的。