ホームページ  >  記事  >  バックエンド開発  >  PHPデータベースでよく使われる関数を詳しく解説

PHPデータベースでよく使われる関数を詳しく解説

小云云
小云云オリジナル
2018-03-09 10:45:112513ブラウズ

この記事では、主に PHP データベースでよく使用される関数について詳しく説明します。お役に立てれば幸いです。
配列関数
extract()
は、連想配列の添字を変数に変換し、

$stu = array('id'=>1,'name'=>Loser);
那么,id和name就可以作为变量使用了$id,$name
key()
从关联数组中取得键名
current()
返回数组中的当前单元
next()
将数组中的内部指针向前移动一位
end()
将指针指向最后一个元素
prev()
将数组中的内部指针向后移动一位
each()
返回数组中当前的键/值对并将数组指针向前移动一步,如果内部指针
穿越了数组的末尾返回false
list()
将数组中的值赋给变量
$arr = array('tom','david');
list($one, $two) = $stu;
range(A, B)
生成一个A-B的数组,倒序也可以
{{array_merge()
数组合并
array_merge(range(0,1),range('a','z'),range('A','Z'))
summary:数组合并时下标冲突,按照以下规则解决
1.如果是字符串下标,后面的元素会将前面的元素覆盖
2.如果是整数下标,重新建立下标(按照0,1,2,3的顺序来重新定义)
array_merge_recursive() 
数组合并,与array_merge没有太多的不同
最大的区别就是当有键名重复时,array_merge()会把相同键名的元素进行覆盖
而array_merge_recursive()会把相同键名的元素组合成一个新数组
}}
{{array_rand(数组,随机取出元素的个数)
随机取出数组内的元素,返回随机数组的下标
如果随机取出一个,返回整型下标
如果随机取出多个,返回整型下标数组array(A, B, C)
}}
{{shuffle(数组)
打乱数组
}}
{{
数组键值函数
[[
array_keys($array)返回数组中所有的键名
array_values($array)返回数组中的所有值
这两个返回值都是以数组的形式
]]
[[
array_combine($array1, $array2)
把两个数组进行结合,第一个数组的值做键名,第二个数组的值做值
如果键数组和值数组个数不一致,会报错
]]
[[
in_array(值, $array)
查看值是否在数组$array中
如果存在,返回true,如果不存在,返回false
区分大小写
不区分数据类型
]]
[[
array_key_exists(键, $array)
查看数组中是否包含某一个键值
类型同上
]]
}}
{{
}}
 ******************************************************/
 /******************************************************
 普通函数
sleep(参数)
延时执行
参数为秒数
 ******************************************************/
/******************************************************
数据库函数
mysql_connect('localhost','username','pwd')
连接数据库
第一个参数表示连接地址
第二个参数表示用户名
第三个参数表示密码
{{
连接数据库
mysql_connect('主机地址:[端口号]','用户名','密码')
选择数据库
mysql_query('use 数据库名')
mysql_select_db(数据库名)
设置执行环境
mysql_query('set names utf8')
}}
{{
查看数据库名称(匹配查找)
show databases like "%***%";
%是指匹配,在前面就是匹配从名字前面开始匹配,在后面就是从
名字后面开始匹配
}}
{{
创建数据库
create database ***;
}}
{{
#增加用户
#格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by '密码'
}}
{{
增删改查(语句)
#创建数据库
create database tb_name;
#删除数据库
drop database tb_name;
#使用该数据库
use tb_name;
#显示数据库中的表
show tables;
#先判断表是否存在,存在先删除
drop table if exists student;
#创建表
create table student(
id int auto_increment primary key,
name varchar(50),
sex varchar(20),
date varchar(50),
content varchar(100)
)default charset=utf8;
#删除表
drop table student;
#查看表的结构
describe student;  #可以简写为desc student;
#插入数据
insert into tb_name values('***','***','***');
#查询表中的数据
select * from tb_name;
select id,name from tb_name;
#修改某一条数据
update tb_name set sex='男' where id=4;
#删除数据
delete from student where id=5;
#蠕虫复制//让数据库成倍数增长
//插入的是重复的数据,没有很大的业务意义,主要用来测试数据表的压力或索引的效率
insert into tb_name (field) select field from tb_name;
}}
判断变量是否为空   合集
isset()  判断变量是否设置,并且设置的值不为空  
如果返回值为被创建,那么返回值为true
empty()  判断变量是否为空
判断数据类型   合集
is_numeric()判断是否是数字或者数字字符串
is_array()判断是否是数组
is_string()判断是否是字符串
is_int()判断是否是整形
is_double()判断是否是浮点型 
is_bool()判断是否是bool类型
字符串函数
is_string()判断是否是字符串
strlen($num)判断变量(字符串)的长度
implode(分隔符, $array)把数组内的值拼接成字符串
explode(分隔符, $array)把字符串按照分隔符切割成数组
[[
字符串可以理解为字符的集合(数组),所以可以通过[]来访问,不能操作中文
]]
[[
strlen()返回字符串的长度
注意:在gbk下一个汉字占两个字节,在utf-8下一个汉字占三个字节
]]
[[
去除空格函数
trim(),ltrim(),rtrim()
第一个去除前后空格,第二个去除左边空格,第三个去除右边空格
]]
[[
strpos(字符串, 'str')
查找str在字符串中的位置,从左开始,查找第一次出现的位置
strrpos(字符串, 'str')
同上,区别就是从有开始查找第一次出现的位置,但是返回的值也是
从右边开始数的
]]
[[
str_repeat($str, num)
将字符串重复几次
$word = str_repeat('你好',3);
]]
[[
ord() 获取字符的ASCII码
chr()将ASCII码转成字符
]]
[[


を使用して文字列をインターセプトできます
substr(文字列,開始位置、インターセプト長)
開始位置が負の数値の場合は -1 から数え、整数の場合は 0 から数え始めます
インターセプト長が空の場合、デフォルトはインターセプトです最後まで
インターセプト長が負の数値の場合、次の文字はインターセプトされないことを意味します
strchr(string, 'str')
str
$に従って文字列内でインターセプトしますstr = 'abccba';
echo strchr($str, 'b'); 結果: bccba
strrchr(string, 'str')
ルールは上記と同じですが、違いは開始点です。右から
str_replace('strone', 'strtwo', $ str) 文字列を置換
$strのstroneをstrtwoに置換
複数の文字列を一度に置換
配列形式で
$str = '明日は明日だ、明日はたくさんある'
str_replace(array('tomorrow','complex'),array('1','2'),$str);
結果: 「明日は 12 個なので、1 がたくさんあります」
注: 1 対 1 の対応がない場合、最初の配列内のすべての要素は 2 番目のパラメーターで置き換えられます
str_split($array, num)
文字列を配列に分割します
num 配列の各要素に値がいくつあるかを参照します
str_pad(string, length, 'supplement')
文字列のパディング、指定された長さの文字列を入力し、足りない場合は「補足値」を使用します
最後にSTR_PAD_LEFTを追加すると左から始まります
最後にSTR_PAD_BOTHを追加すると両側から始まります
文字列の大文字と小文字の変換
strto lower()
すべての文字列を小文字に変換します
strtoupper()
すべての文字列を大文字に変換します
nl2br()
文字列の改行を ;
htmlspecialchars()
文字列をエンティティに変換
]]
ソート関数
sort()
配列内の要素をアルファベットの昇順に並べ替えます
並べ替え( )
配列内の要素を降順に並べ替えます
Oriented Object

{{
增加属性
直接用$str->新属性名 = 'str';
}}
{{
删除属性
unset($str->属性名)
}}
{{
判断属性是否存在
isset($str->属性名)
}}
{{
instanceof
用来判断变量是否属于某一个数据类型
class Student{}
$stu = new Student;
var_dump($stu instanceof Student);
}}

以上がPHPデータベースでよく使われる関数を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。