>  기사  >  백엔드 개발  >  PHP 데이터베이스에서 일반적으로 사용되는 기능에 대한 자세한 설명

PHP 데이터베이스에서 일반적으로 사용되는 기능에 대한 자세한 설명

小云云
小云云원래의
2018-03-09 10:45:112530검색

이 글은 주로 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"
참고: 일대일 대응이 없는 경우 첫 번째 배열의 모든 요소는 두 번째 매개변수
str_split($array, num)
문자열을 배열로 분할
num 각 배열 요소에 몇 개의 값이 있는지를 나타냅니다
str_pad(string, length, 'supplement')
문자열 패딩, 채우기 문자열을 지정된 길이만큼 추가하고 부족하면 "보조값"을 사용합니다. Filling
끝에 STR_PAD_LEFT를 추가하면 왼쪽부터 시작됩니다
끝에 STR_PAD_BOTH를 추가하면 양쪽에서 시작됩니다
문자열 대소문자 변환
strtolower()
모든 문자열을 소문자로 변환
strtoupper()
모든 문자열을 대문자로 변환
nl2br()
문자열의 개행을
배열의 요소를 내림차순으로 정렬합니다
Oriented Object

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

위 내용은 PHP 데이터베이스에서 일반적으로 사용되는 기능에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.