首页 > 编程知识 正文

php多维数组mysqli,php多维数组转一维数组

时间:2023-12-27 22:26:58 阅读:325258 作者:CDEO

本文目录一览:

php 函数传递出二维数组?

数据库有两条两列记录,为什么 print_r(t()); 只出一条记录。

因为循环里覆盖了。

修改为:$arr[]=$row;

之后怎么把 t() 赋值给$arra,方便这样调用

$arra[0][0] 第一条数据的第一个字段

function t()

{

global $conn;

$result = mysqli_query($conn,"select tn,md from subject ");

return mysqli_fetch_all($result,MYSQLI_NUM);

}

$arra = t();

题外话不建议用MYSQLI_NUM形式,使用MYSQLI_ASSOC会更好。

mysqli_fetch_all($result,MYSQLI_ASSOC);

使用的时候:

$arra[0]['tn']

PHP把从MYSQl查询出的所有行转换为多维数组!

建议你使用PDO数据扩展,然后使用PDOStatement::fetchAll方法获得所有符合条件的数据集

php里说出数组的常用函数及用法?

PHP常用操作数组的函数

变量和数组的转换

compact() 将变量整合成数组

extract() 将数组中的每个值以键的名分解成变量

变量和字符串转换

explode() 以某个子串分解字符串成数组

implode() 将一维数组根据某个符号拼接成字符串

数组与数组之间关系

array_merge() 合并/并集

array_diff() 差集

array_intersect() 交集

数组值的操作

array_pop() 删除(弹出)数组最后一个值

array_push() 向数组中追加一个值

判断数组是否存在数组中

in_array() 判断一个值是否存在数组中

array_key_exists() 判断键是否存在数组中

数组去重

array_unique() 数组去重

获取二维数组中的值的集合

array_column() 获取二维数组中的值的集合

提取数组的键与值

array_values 提取数组的值构成一维数组

array_keys 提取数组的键构成一维数组

返回数组中的随机的键

array_rand() 返回数组中的随机的键

返回数组中值的数量

count() 返回数组中值的和

查询数组中的值

array_search() 查询数组中的值是否存在/in_array()有点相似

排序

sort() 排序有很多种,按键或值升降序

array_multisort() 多维数组排序

分割数组

array_chunk()

PHP使用mysqli扩展连接MySQL数据库

1.面向对象的使用方式

$db

=

new

mysqli('localhost',

'root',

'123456',

'dbname');

如果建立连接时未指定数据库则选择使用的数据库,切换使用的数据库

$db-select_db('dbname');

$query

=

"SELECT

*

FROM

user

WHERE

uid=4";

$result

=

$db-query($query);

$result_num

=

$result-num_rows;

$row

=

$result-fetch_assoc();

//返回一个关联数组,可以通过$row['uid']的方式取得值

$row

=

$result-fetch_row();

//返回一个列举数组,可以通过$row[0]的方式取得值

$row

=

$result-fetch_array();

//返回一个混合数组,可以通过$row['uid']和$row[0]两种方式取得值

$row

=

$result-fetch_object();

//返回一个对象,可以通过$row-uid的方式取得值

$result-free();

//释放结果集

$db-close();

//关闭一个数据库连接,这不是必要的,因为脚本执行完毕时会自动关闭连接

当进行INSERT、UPDATE、DELETE操作时,使用$db-affected_rows查看影响行数

2.面向过程的使用方式

$db

=

mysqli_connect('localhost',

'root',

'123456',

'dbname');

如果建立连接时未指定数据库则选择使用的数据库,切换使用的数据库

mysqli_select_db($db,

'dbname');

查询数据库

$query

=

"SELECT

*

FROM

user

WHERE

uid=4";

$result

=

mysqli_query($db,

$query);

$result_num

=

mysqli_num_rows($result);

返回一行结果

$row

=

mysqli_fetch_assoc($result);

//返回一个关联数组,可以通过$row['uid']的方式取得值

$row

=

mysqli_fetch_row($result);

//返回一个列举数组,可以通过$row[0]的方式取得值

$row

=

mysqli_fetch_array($result);

//返回一个混合数组,可以通过$row['uid']和$row[0]两种方式取得值

$row

=

mysqli_fetch_object($result);

//返回一个对象,可以通过$row-uid的方式取得值

断开数据库连接

mysqli_free_result($result);

//释放结果集

mysqli_close($db);

//关闭一个数据库连接,这不是必要的,因为脚本执行完毕时会自动关闭连接

当进行INSERT、UPDATE、DELETE操作时,使用mysqli_affected_rows()查看影响行数

php怎么用mysqli链接数据库和输出sql

一、mysql与mysqli的概念相关:

1、mysql与mysqli都是php方面的函数集,与

mysql数据库

关联不大。

2、在

php5

版本之前,一般是用php的

mysql函数

去驱动mysql数据库的,比如mysql_query()的函数,属于

面向过程

3、在php5版本以后,增加了mysqli的函数功能,某种意义上讲,它是mysql系统函数的增强版,更稳定更高效更安全,与mysql_query()对应的有mysqli_query(),属于面向对象,用对象的方式操作驱动mysql数据库

二、mysql与mysqli的区别:

1、mysql是非持继连接函数,mysql每次链接都会打开一个连接的进程。

2、mysqli是永远连接函数,mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销。mysqli封装了诸如事务等一些高级操作,同时封装了DB操作过程中的很多可用的方法。

三、mysql与mysqli的用法:

1:mysql(过程方式):

$conn

=

mysql_connect('

localhost

',

'user',

'password'); //连接mysql数据库

mysql_select_db

('data_base');

//选择数据库$result

=

mysql_query('select

*

from

data_base');//第二个可选参数,指定打开的连接$row

=

mysql_fetch_row(

$result

)

)

//只取一行数据echo

$row[0];

//输出第一个字段的值

PS:mysqli以过程式的方式操作,有些函数必须指定资源,比如mysqli_query(资源标识,

SQL语句

),并且资源标识的参数是放在前面的,而mysql_query(SQL语句,'资源标识')的资源标识是可选的,默认值是上一个打开的连接或资源。

2、mysqli(对象方式):

$conn

=

new

mysqli('localhost',

'user',

'password','data_base');//要使用new

操作符

,最后一个参数是直接指定数据库//假如构造时候不指定,那下一句需要$conn

-

select_db('data_base')实现$result

=

$conn

-

query(

'select

*

from

data_base'

);$row

=

$result

-

fetch_row();

//取一行数据echo

row[0];

//输出第一个字段的值

使用new

mysqli('localhost',

usenamer',

'password',

'databasename');会报错,提示如下:

Fatal

error:

Class

'mysqli'

not

found

in

...

一般是mysqli是没有开启的,因为mysqli类不是

默认开启

的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli编译进去。

四、mysql_connect()与mysqli_connect()

1.使用mysqli,可以把数据库名称当作参数传给mysqli_connect()函数,也可以传递给mysqli的

构造函数

2.如果调用mysqli_query()或mysqli的对象查询query()方法,则连接标识是必需的。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。