20211010 PHP笔记
前言
一、mysqli_real_query()
在数据库中执行一次SQL查询,受查询的字符需要事先经过转义处理;
二、mysqli_multi_query()
公式:
mysqli_multi_query( 使用的数据库连接, 需要执行的SQL语句);
既然使用了这个方法,那么必然是有多条SQL语句需要被执行,但这个方法看起来又只能传两个参数,这…? 可以选择累加的方法, 在一个变量上累加多条SQL语句,使用分号隔开: 例:
$sql = "SELECT Lastname FROM Persons ORDER BY LastName;";
$sql .= "SELECT Country FROM Customers";
这些SQL语句会被逐条执行,还是要注意一下执行顺序的;
如果第一条命令执行正常,那么该方法将返回一个true(否则返回false),对于第一条命令返回的结果,必须使用mysqli_store_results()或mysqli_use_result()来进行接收: mysqli_store_results()将全部命令的执行结果直接取回客户端, 效率更高;
do {
if($result=mysqli_store_result($link)) {
$data[$i]=mysqli_fetch_all($result);
mysqli_free_result($result);
}else{
$data[$i]=null;
}
$i++;
if(!mysqli_more_result($link)) break;
}while (mysqli_next_results($link));
三、mysqli_free_result();
释放变量占用的内存 公式:
mysqli_free_result(变量名);
四、mysqli_fetch_all()
从变量中取得所有数据并以关联数组的形式存储; 公式:
mysqli_fetch_all()
例:
$data[$i]=mysqli_fetch_all($result);
五、fopen();
fopen打开某个路径对应的文件,依据 [需要指针由文档何处开始] 来选定访问模式;
mode | 说明 |
---|
r | 只读,将文件指针指向文件头. | r+ | 可读写,余同r | w | 可写入,将文件指针指向文件头并将文件大小截为零。如果文件不存在则创建之. | w+ | 可读写,余同w | a | 可写入,将文件指针指向文件末尾, 如果文件不存在则创建之. | a+ | 可读写,余同a |
$file = fopen( './存储至文件', 访问模式 );
六、flock()
独占锁定 同一时刻只有一个单独的用户在操作文件,这样是没有问题的。但是如果两个或者更多用户同时操作同一文件的话,程序就会出现错误。解决这种问题的方法就是,在使用 PHP 向文件中写入时,暂时锁定该文件. 改变当前文件的锁定状态,flock执行完毕返回布尔值:
mode | 说明 |
---|
LOCK_SH | 取得共享锁定(读取的程序) | LOCK_EX | 取得独占锁定(写入的程序) | LOCK_UN | 释放锁定(无论共享或独占) |
if ( flock( $file, LOCK_EX ) ) {
使用了 flock() 函数对文件进行了加锁操作,那么调用 fclose() 函数时,文件会自动解锁,但最好还是在文件写入完成后加上解锁语句
七、fwrite()
拿到独占锁定和写入权限后, fwrite() 将string内容自文件指针处写入. 用于向文件写入字符串,成功返回写入的字符数,否则返回 FALSE 公式:
$result_int = fwrite(文件名, 一个字符串);
八、fclose()
fopen()打开文件,操作完之后总还是要关闭文件的; 公式:
fclose(文件路径)
七、fread();
读取一个文件 公式:
fread(一个已经被fopen打开的文件, 要读取的字节数);
例:
while(!feof($file)) {
$con .= fread($file, 1);
}
八、unset()
销毁一个已经给定的变量; 公式:
unset(变量名);
例:
unset($arr[3]);
九、isset()
检查一个变量是否已设置并且非 NULL. 公式:
isset(变量名);
例:
isset($_GET['key'])
十、file_get_contents()
获取某个文件中的所有内容, 公式:
file_get_contents('文件路径');
例:
$str = file_get_contents('mysql.txt');
十一、file_put_contents()
把一个字符串写入文件中; 公式:
file_put_contents('文件路径', 要写入的字符串, 模式(可选))
十二、explode()
将字符串以某个字符为界割裂成一段段,并且做成一个数组返回: 完成后可以通过选取数组元素的方法:arr[?],来选取某段割出的数组元素,选出来的是字符串或者数字; 公式:
explode(分割标志, 字符串);
例
$str=我@_@不@_@知@_@道
explode('@_@', $str);
十三、implode()
用某个/段字符作为连接再次将数组合并为字符串, 完成后返回字符串:
$arr = ["我", "不", "知", "道":]
$strs = implode('@_@', $arr);
var_dump($strs);
十四、点等号".="
基本相当于JS中的累加号,可以拼接字符串和数字, 对, 对于数字型也只能是进行拼接:
$a = 1;
$b = 3;
$c = 2;
$c .= $a;
$c .= $c;
echo $c;
总结
|