PHP基础语法

  • PHP在HTML中的嵌入,允许四种类型

    • <?php?>,只要支持PHP语言的服务器。
    • <??>,需将php.ini文件中的short_open_tag的值设为on
    • <script language ="php"></script>
    • <%%>,在PHP3.0.4及其以上版本,需将php.ini文件中的asp_tags的值设为on
  • 三种注释方法

    123456
    //注释内容...# 注释内容.../* 多行注释注释内容...*/
  • 输出命令

    • echo:无返回值,不能用于复杂语句。
    • print:有返回值,负责为用户提供反馈,能显示原始字符串和变量,提供与echo相同的功能,且比echo语句更强大。
    • print_r
  • 区分大小写

    • 区分大小写的时候

      • 变量名
      • 常量名,通常写成大写
    • 不区分大小写的时候
      • 函数名、方法名、类名,在调用时尽量使用和定义时相同的名字;
      • 魔术常量不区分大小写,如 LINEFUNCTION等;
      • NULL,TRUE,FLASE不区分;
      • 类型转换时,如(string) 和(STRING)是相同的;

数据类型

数据类型是语言最为基础的部分,它是高级语言抽象出来的一个概念,对于低级语言(机器语言)没有这个概念。对于CPU、内存而言,并没有数据类型之分,数据是没有差别的,高级语言的数据类型为内存中的数据指定了特定的计算方式。

数据类型的产生使得程序的编写更加规范、简洁和灵活。

  • 数据类型:

    • 标量类型:字符串、整型、浮点型和布尔型;

      • boolean(或为bool)
      • integer(或为int)
      • float
      • string
    • 复合类型:数组和对象;
      • array
      • object
    • 特殊类型:资源和NULL
  • 数据类型的方法

    1234567891011
    // 判断数据类型的方法  is_bool()/is_int()/is_float()/is_string()/is_array()/is_object()// 数据类型的转换方式    // 在变量前加上用括号括起来的数据类型  (int)/ (bool)/ (float)/ (string)/ (array)/ (object)   // 使用3个具体类型的转换函数  intval()/floatval()/strval()  // 使用函数   settype(var, type)// 判断变量是否为数字或者数字组成的字符串。   is_numeric()

    注意:如果给定的数超过了int的范围,将会解释为float,同样,如果执行的运算结果超过int范围,也会返回float。

  • 进制表示

    1234
    $a = 123;//十进制数 $a = 0123;//八进制数 $a = 0x1A;//十六进制数 $a = 0b11111111;//二进制数字
  • 字符串中特殊字符

    字符形式 | 功能
    —|—
    \n | 换行且归0
    \br | 换行
    \t | 跳格
    \’ | 单引号
    \” | 双引号
    \$ | $符号
    \r | 回车

  • NULL:表示变量没有值,下列情况变量被认为是NULL:

    • 被赋值为NULL;
    • 尚未被赋值;
    • 被unset()。

      NULL大小写敏感。

变量

  • 定义:变量可以看做是一个容器,先给容器取个名字,然后利用赋值运算符给这个容器装上内容。变量是最常见的数据类型应用形式,主要由变量名、变量值和变量类型三部分组成。

  • 内部实现:PHP中变量名与变量可以简单地对应为zval和zend_value。PHP通过zval结构体来表示一个变量,不同类型的变量值则通过zval内嵌入一个联合体表示,即zend_value。通过zvalzend_value及不同类型的结构实现了PHP基础的数据类型。

    zval的作用:(1)PHP变量;(2)统一函数的参数

  • 变量的命名规则

    • 必须以$符号开头;
    • 第二个字符必须是字母或者下划线;
    • 第二个字符以后的可以是字符数字等的任意组合。
  • 默认变量

变量名 意义
PHP_SELF 目前执行的文件名称
SERVER_NAME 服务器名
SERVER_SOFTWARE 服务器软件
DOCUMENT_ROOT 文档的根目录
HTTP_USER_AGENT 用户相关信息
REMOTE_ADDR 远程用户的地址
REMOTE_PORT 远程用户的连接端口

在取得变量内容时,以变量名称为数组指针即取得信息。例如SERVER_NAME可以用$_SERVER[‘SERVER_NAME’]取得信息。

常量

  • 定义:常量就是简单值的标识符(名字),代替一个有意义的值。常量如同其名称所暗示的,在程序执行期间该值不能改变。PHP的变量包含两种:一种默认常量,另一种的自定义常量。

  • 默认常量

变量名 意义
_FILE_ 当前正在分析着的脚欧诺个在分析一个被include或require包含的文件,则该常数给出的是include所包含的文件名,而不是当前文件名。
_LINE_ 当前正在分析着的行在脚本的行数。如果用在一个被include或require的文件中,则该常数给出的是(行)在被include包含的文件中的位置。
PHP_VERSION 一个描述当前用着的PHP处理器的版本的字符串
PHP_OS 正在运行本PHP处理器的操作系统的名字
TRUE 真值
FALSE 假值
E_ERROR 指示一个不可恢复的语法错误
E_WARNING 指示如下一种状态:PHP指导某处出错了,但仍可以继续运行;这些错误能被脚本自身捕获
E_PARSE PHP在脚本的一个语病中被阻塞,不可恢复
E_NOTICE 出现了可能是一个错误也可能不是的情况:(这种情况下)运行会继续

这些系统变量可以帮助我们很好地了解系统当前的情况,而且这些常量可以随时调用。

  • 自定义常量:通过define('name',number)函数自定义需要的常量。

运算符及表达式

  • 算术运算符
运算符 名称 结果
$a + $b 加法 $a 和 $b 的和
$a - $b 减法 $a 和 $b 的差
$a * $b 乘法 $a 和 $b 的积
$a / $b 除法 $a 除以 $b 的商
$a % $b 取模 $a 除以 $b 的余数
++$a 前加 $a 的值加一,然后进行操作
$a++ 后加 $a 的值先进行操作,后加一
–$a 前减 $a 的值减一,然后进行操作
$a– 后减 $a 的值先进行操作,后减一
  • 比较运算符
运算符 名称 结果
$a == $b 等于 TRUE,如果$a等于$b
$a === $b 全等 TRUE,如果$a等于$b,并且它们的类型也相同
$a != $b 不等 TRUE,如果$a不等于$b
$a <> $b 不等 TRUE,如果$a不等于$b
$a !== $b 非全等 TRUE,如果$a不等于$b,或者它们的类型不同
$a < $b 小于 TRUE,如果$a严格小于$b
$a > $b 大于 TRUE,如果$a严格$b
$a <= $b 小于等于 TRUE,如果 $a 小于或等于$b
$a >= $b 大于等于 TRUE,如果 $a 大于或等于$b

另外一个条件运算符是“ ? : ”(或三元)运算符。

  • 逻辑运算符
运算符 名称 结果
$a and $b 逻辑与 TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b 逻辑或 TRUE,如果 $a 或 $b 任一为TRUE。
$a xor $b 异或 TRUE,如果 $a 和 $b 不同时
! $a 逻辑非 TRUE,如果 $a 不为 TRUE。
$a && $b 逻辑与 TRUE,如果 $a 与 $b 都为TRUE。
$a $b 逻辑或 TRUE,如果 $a 或 $b 任一为TRUE。

其中and与&& 、or与||是同一逻辑运算符的两种写法。

  • 位运算符

    位运算符允许对整型数中指定的位进行置位。如果左右参数都是字符串,则位运算符将操作字符的 ASCII 值。

表达式 名称 结果
$a & $b 按位与 将把 $a 和 $b 中都为 1 的位设为 1。
$a $b 按位或 将把 $a 或者 $b 中为 1 的位设为 1。
$a ^ $b 按位异或 将把 $a 和 $b 中不同的位设为 1。
~ $a 按位非 将 $a 中为 0 的位设为 1,反之亦然。
$a << $b 左移 将 $a 中的位向左移动 $b 次(每一次 移动都表示“乘以 2”)。
$a >> $b 右移 将 $a 中的位向右移动 $b 次(每一次 移动都表示“除以 2”)。
  • 字符串运算符

    • 连接运算符(“.”),它返回其左右参数连接后的字符串。
    • 连接赋值运算符(“.=”),它将右边参数附加到左边的参数后。
  • 错误抑制操作符

    • 在最常见的数据库连接与文件创建操作或出现除0等异常时,可以用@符号来抑制函数错误信息输出到浏览器端 $a=@(5/0)
    • 外部命令执行 ,使用``来运行外部系统命令,注意不是单引号,是ESC下面那个按键

常用的控制流

if语句

  • 简单的if语句

    123
    if(判断语句) {    执行语句体;}
  • if…else语句

    12345
    if(判断语句) {    执行语句体1;} else {    执行语句体2;}
  • 嵌套if…else语句

    123456
    if(判断语句) {    执行语句体1;} else if(判断语句2) {    执行语句体2;} else if...else...

switch语句(多分支选择性语句)

  • 表达式:

    123456
    switch(表达式) {    case 1: 执行语句体1;break;    case 2: 执行语句体2;break;    ...    default:执行语句体n;break;}

    switch后面括号内的表达式,可以是整型表达式或字符型表达式,也已是枚举型数据。表达式的值与case语句后面的值逐个进行匹配,如果匹配得上,就执行case语句后面执行语句体,然后通过break跳出该循环。如果最终没有case语句匹配的表达式,则执行default后面的执行语句体。(default后面可以不加break)。

while循环

  • while语句

    123
    while(判断语句) {    执行体语句;}
  • do…while语句

    123
    do {    执行体语句;}while(判断语句)

for循环

  • for语句

    123
    for(表达式1,表达式2,表达式3) {    执行语句体;}

break、continue语句

  • break:具有结束、中断整个循环的作用,可以被用到for、do…while等循环中,起到结束循环的作用。实际上break语句还可以用来从循环体内跳出循环,即提前结束循环,接着执行其他语句。

  • continue:起到结束本次循环,执行下次循环的作用。

常用函数

输出函数

123456
echo()  //【语言结构】print() //【语言结构】【有返回值】,若传输失败导致没有输出,它返回falsevar_dump()var_export()    //【有返回值,翻译一个合法的PHP代码】printf()    //类似与C语言的形式 printf("my name is %s, age %d", $name, $age);,打印出来sprintf()   //跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样

数组函数

  • 排序类

    12345678910111213141516
    // 按V,按元素值sortrsortasortarsort
    
    //按K,按键值ksortkrsort
    
    //按字母natsort();  //区分大小写的排序natcasesort();  //不区分大小写的排序,
    
    // 回调usort($arr,"strnatcmp")//回调类的排序,把$arr数组里的每一个元素丢到strnatcmp()[非自然数排序]处理【返回新的排序数组】

    规律:

    • 没有”k”,排序按照【value】排序,排序有”a”的表示要保留KEY,有”r”的倒序排
    • 有“k”,排序按照【KEY】排序,有”r”的倒序排
    • 有”u”的,表示要丢到回调函数中处理的
  • 键值操作

    12345678910111213
    array_values($arr);//获取$arr中的值重排,去掉下标【返回值新索引数组】array_keys($arr[,"str",true])//获取$arr中所有字符是"str"的下标,形成索引数组,true表示区分大小写【返回新索引数组】
    
    array_search("is",$arr[,true]) //返回值"is"在$arr中的key,找不到返回fales,true表示严格按照类型(8,"8")【返回第一个匹配值】
    
    in_array("str",$arr);//判断"str"在$arr中是否存在,【返回BOOL】is_array($arr);//判断是否是数组【返回BOOL】array_key_exists($key,$arr); //查询$arr中是否有$key,【返回BOOL】
    
    array_flip($arr);// 交换键值,如有重复,后来居上,【返回新数组】array_reverse($arr,[true|false]);//数组顺序反转,param2是否保留原来键值【返回新关联/索引数组】
    
    array_column(array(),'name'[,name_two]) — 返回数组中指定的name列[可选参数,如果有返回name=>name_two的形式]【返回一维数组】
  • 元素个数和唯一性

    1234
    array_unique($arr);//去掉$arr中的重复值,重复的保留第一个值,【返回数组,键值保留】
    
    array_count_values($arr)//统计数组值出现的次数,【返回数组,KEY为原来数组的值,VALUE为统计的次数】count($arr[,1])/sizeof();//统计$arr的元素个数,参数"1"表示统计多维数组开启,默认0为关闭【返回统计个数】
  • 回调函数

    1234
    array_filter($arr,"function");//把$arr放到函数function中处理,【返回判断为TRUE的数据组成新数组,键值保留】array_walk($arr,"function"[,"data"]);//把$arr放到function(&$v,$k,$data)中处理【返回值为bool】array_map("function",$arr,$arr2,$arr3,....);//把所有数组返回到回调函数统一处理,【返回数组】array_reduce($arr,myfunction[,initial]):把一维数组$arr中的值依次传到自定义函数myfunction($v1,$v2)的v2上,v1为累加值类似于( .= ),[如果有initial,先把其当v1传进去]【返回字符串】
  • 拆分,合并,分解,接合数组

    1234567891011
    array_slice($arr,1[,2]);//在$arr中,从第二个开始取[,返回俩个值]【返回新数组(对原数组无影响),键值保留】array_splice($arr,1[,2,"aaa","bb"]);//删除或替换,从$arr第二个开始取,删除或替换2个值【返回值为新数组,拆掉原数组】
    
    array_combine($arr1,$arr2);//数组$arr1为KEY,$arr2为VALUES结合形成新索引数组【返回索引数组】array_merge($arr1,$arr2,$arr3...);//数组进行合并,保留键值,有重复后来者居上(取后者)【返回新数组】$arr1+$arr2 // 发现有key值相同的,取前者,第二个重复的值丢弃
    
    array_intersect($arr1,$arr2)//返回两个数组的交集,键值不变array_diff($arr1,$arr2)//返回两数组的差集,返回的值为第一个数组的值,键值不变
    
    array_chunk($arr,2)//分割数组,把$arr按照【2个为一组】均等分割【返回一个二维数组】
  • 数组的数据结构【2.无返回值,传值引用,就直接对原数组进行了修改】

    12345678910111213
    array_shift($arr)//从开头,删除数组第一个元素array_unshift($arr,"one","two")//从开头,添加元素array_pop($arr)//从结尾,删除数组最后一个元素array_push($arr,"aaa");//从结尾,添加元素
    
    current($arr)//返回数组中的当前单元 比如是关联数组是不知道下标,可以输出当前数组的办法解决key($arr)//返回当前指针指向元素的键值next($arr)//当前指针下移pre($arr)//当前指针上移end($arr)//指针指到最后reset($arr)//指针回归到开头
    
    unset($arr)//销毁此数组
  • 其他

    12345
    array_rand($arr,2);//随机返回两个$arr数组当中的key【返回值为值或者数组】shuffle($arr)//随机的重组$arr,顺序变乱【返回新数组,保留键值】array_sum($arr);//返回$arr的value的和【返回一个值】range(0,10,2,)//快速创建0,10的数组,间隔为2,所以有5个值【返回新索引数组】http_build_query($arr)//把关联数组转换成一个经过urlencode加密的URL eg:array["a"=>2];=>URL:a=2&

字符串函数

  • 返回bool

    12
    isset($a)   //当$a=NULL 或不存在,返回false,反之为trueempty($a)   //当$a=NULL/''/array()/0/'0'/不存在时 返回true,反之为false
  • 返回值为自字符

    1234567
    substr(字符串,开始地方,[返回字符串的长度]); // 截取字符串的一部分,第一个字符位置为0substr_replace($str,"aaa",start[,length]);  // 在$str上操作,从第start个开始,把【后边】的字符[全/或length个]替换sub_count($str,"is"[,5,10]);    //[ 从第五个字符开始,搜索长度为10,]搜索is在$str中出现的次数,【返回次数】strstr($email,"@"[,true])    //从头开始搜索,无true返回@后边字符,有true返回@前边的字符[strrchr对比]strrchr($email,"@")     //从结尾开始搜索,返回@后的所有字符str_replace(被替换词,替换词,被搜索字符串,[统计替换次数$num])      //前两个参数也可为数组,两个数组元素个数相同str_repeat($str,num);       //重复$str字符串 num次,
  • 返回值为数字类的

    1234567891011121314151617
    // 定位strpos($str,"@");   //返回@【第一次出现的位置】strrpos($str,"@");  //返回@【最后一次出现的位置】
    
    //统计strlen($string);成功则返回字符串 $string 的长度mb_strlen($string,'utf8');//获取字符串$string长度,多字节的字符被计为 1。str_word_count($str[,0/1/2]);   //返回$str中单词的数量[0指返回次数,默认值/1指以数组形式返回单词值/2指返回关联数组,k为单词首字母下标,v单词值]
    
    //以下四个比较函数,【返回值:相等0,小于-1,大于1】strcmp($str1,$str2);    //按ASCII码比较 str1>str2 则返回1 相等返回0 <返回-1  strcasecmp  //比较两个字符串(不区分大小写),函数是二进制安全的。类似于strncasecmp(),但是strncasecmp可以指定每个字符串用于比较的字符数。strnatcmp($str1,$str2); // 使用"自然"算法来比较两个字符串(区分大小写) strnatcasecmp($str1,$str2); // 使用一种"自然"算法来比较两个字符串(不区分大小写)
    
    number_format(10000[,2]);//==》10,000.00        把第一个参数格式化,保留2位小数

    在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。

  • 文本处理类

    1234567891011
    strtoupper($str)    //字母全转为大写【返回全大写字符串】strtolower()    //字母全转为小写【返回全小写字符串】ucfirst()   //整个$str首字母大写ucword()    //$str每个单词首字母大写
    
    strtotime('2015-10-10 10:10:10'); //指定时间转换为时间戳【返回时间戳】
    
    str_pad($str,length,[---,STR_PAD_BOTH]); //在$str的两边填补“---“,注意,length若小于$str长度,不填补    trim($str[,"a",STR_PAD_BOTH])   //去除两边/左/右的空白或"a",默认是空白,或自定义字符
    
    floatval("123.45aa")    //=》获取变量的浮点值【123.45】
  • HTML类处理

    1234567891011
    htmlspecialchars($str)  //函数把【预定义字符】转换为【 HTML 实体】,&转换成&amphtmlspecialchars_decode($str);  //把【HTML实体】转换成【预定义字符】,&amp转换成&htmlentities($str); //函数把【预定义字符】转换为【 HTML 实体】,&转换成&amp,有乱码问题,注意第二第三个参数,若编码不正确,会在实体化时把信息丢失。html_entity_decode($str);   //把【HTML实体】转换成【预定义字符】,&amp转换成&,  &gt 转成 <
    
    addslashes($html);      //添加转义字符“/”stripslashes($html);    //删除转义字符“/”strip_tags($html);      //去除HTML标签
    
    nl2br($str);    //在$str中的换行/n前插入<br>,因为\n在源码可以换行,但是在浏览器窗口不行,有这个就可以iconv( from_charset ; to_charset,$str); //转化字符格式,如$file_name = iconv("gb2312","utf-8",$file_name);

正则函数

  • 字符串的匹配查找

    1234
    preg_match($pattern,$subject,$arr); //按正则$pattern处理$subject,第一次匹配结果返回到数组中【函数的返回值为匹配次数】preg_match_all($pattern,$subject,$arr)  //按正则$pattern处理$subject,全部匹配结果返回到数组中【函数的返回值为匹配次数】strstr($str,"@"[,true]);strpos,strrpos,substr($str,position)    //联合使用
  • 字符串的替换

    12
    preg_replace($pattenr,$replace,$str);//【强大的字符串处理函数】在$str中,把$parrern匹配的值替换成$replcae【返回值为处理后的字符串】str_replace($str,"aaa","bbb");//把$str中的aaa换成bbb
  • 字符串的分割和链接

    123
    preg_split($pattern,$str);通过一个正则表达式分隔字符串【返回值为数组】explode(",",$str[,$limit_num]);//把$str按照","分割成一个数组[可选参数为返回数组的元素个数]【返回一个分割后的数组】impolde("+",$arr);//把$arr里的元素按照“+”链接成一个字符串
123
// 示例$keywords = preg_split("/[\s,]+/", "hypertext language, programming");// 结果Array([0] => hypertext,[1] => language[2] => programming)

遵循:能用字符串函数解决不用正则的原则,主要依据是速度问题,内部函数快于正则。

数学函数

1234567891011121314
ceil()//向上取整floor()//向下取整round();//四舍五入abs();//取绝对值

rand(10,100)//随机取值mt_rand(10,100)//随机取值,算法不同,速度更快

fmod()//返回除法浮点形余数

max(int/$arr)//取最大值min(int/$arr)//取最小值

pow(1024,2)//返回1021的2次幂

时间函数

12345678910
date_default_timezone_set()('PRC');//设置时区为中国   date.timezone ="PRC";//或者直接修改PHP.INI

time(); //默认获取当前时间,【返回时间戳格式】micritime();    //获取当前时间【返回毫秒的时间戳】getdate()   //获取当前时间,【返回一个数组,参数年,月,日等都有】

mktime(H,i,s,m,d,Y) //指定时间转为时间戳,参数为空的时候作用与time()相同【返回时间戳格式】strtotime('2015-10-10 10:10:10'); //指定时间转换为时间戳【返回时间戳】date("Y-m-d H:i:s",time()); //转换时间戳为日期格式【返回目标格式的字符串】

JSON

123
json_encode($data);//对变量进行JSON编码json_decode($data)//对JSON格式的字符串进行解码json_last_error();//返回最后一次反生的错误

SQL函数

12345678910111213
mysql_connect('localhost',"root","root");   //连接数据库mysql_select_db('data',$conn);  //选择数据库名mysql_query('set names utf8');  //设置编码

mysql_fetch_row();  //返回索引数组mysql_fetch_array();    //试返回值为关联/索引数组mysql_fetch_object;     //返回对象mysql_fetch_assoc();    //返回关联数组

mysql_num_rows();   //返回上一次select的查询语句条数mysql_affected_rows();  //返回上一次insert,update,delete的数据条数

mysql_close();  //关闭数据库

URL处理函数

12345
urlencode($url) //对该URL进行编码;原因:防止乱码,解决空格的呢个字符不能传递问题,form也是此编码格式传递urldecode($url) //对该URL进行解码parse_url($url) //返回该URL的所有信息,[scheme协议][host域名] [path路径][query参数]  【返回含信息的数组】pathinfo($url)   //["dirname"目录名] ["basename"文件名] ["extension"文件后缀]【返回含信息的数组,下标不同】get_meta_tags($url) //获取该页面的所有META标签【返回关联数组】

其他函数

123
sleep(10)//脚本执行到这里后,延迟10秒继续执行serialize()//返回字符串,此字符串包含了表示 value 的字节流,可以存储于任何地方。unserialize()//对单一的已序列化的变量进行操作,将其转换回 PHP 的值。

当序列化对象时,PHP 将试图在序列动作之前调用该对象的成员函数 sleep()。这样就允许对象在被序列化之前做任何清除操作。类似的,当使用 unserialize() 恢复对象时, 将调用 wakeup() 成员函数

参考:

  1. PHP常用函数归类总结【大全】

PHP(三)——PHP基础知识相关推荐

  1. 串口发送tcp数据 源端口号_三分钟基础知识:用动画给面试官解释 TCP 三次握手过程...

    作者 |  小鹿 来源 |  小鹿动画学编程 写在前边 TCP 三次握手过程对于面试是必考的一个,所以不但要掌握 TCP 整个握手的过程,其中有些小细节也更受到面试官的青睐. 对于这部分掌握以及 TC ...

  2. [Java面试三]JavaWeb基础知识总结.

    [Java面试三]JavaWeb基础知识总结. 1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Int ...

  3. 【练习题】心田花开:三年级基础知识+写作练习

    学好语文打好基础很重要,多做多练也必不可少,三年级对于孩子们来说无疑是学习的分水岭,这时候就要更加注重语文知识的学习,心田花开整合了三年级语文基础+写作的练习题,为孩子们提升语文成绩贡献一份力. 一. ...

  4. 数据库系统概论第三单元基础知识(一)

    mysql基础操作 mysql8.0 workbench /* ----------------------------基础知识------------------------------ */ # ...

  5. Kinect for Windows SDK开发入门(三):基础知识 下

    原文来自:http://www.cnblogs.com/yangecnu/archive/2012/04/02/KinectSDK_Application_Fundamentals_Part2.htm ...

  6. 初学python类必须要知道的三个基础知识(入门理解)

    一. 为什么要用到类: 类是一种更高级的封装,可以将多个功能函数按照一定的顺序组织成新的结构,这个结构有几个主要作用: 1.将复杂的组织功能装成一个整体,降低了代码使用的复杂度.外界可以直接使用而不用 ...

  7. python第三项基础知识_Python学习心得——基础知识(三)

    一.常见的Python种类 1.Cpython 使用C语言实现,Python的官方版本,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上.我们目前 ...

  8. Elasticsearch笔记(三)基础知识

    Elasticsearch笔记(二)安装与使用 理论知识 索引.文档.节点.分片 索引.文档偏向开发人员 节点.分片偏向运维人员 文档(Document) 简介 Elasticsearch是面向文档的 ...

  9. [Windows驱动开发](三)基础知识——驱动例程

    一.NT式驱动的基本例程 1. 驱动入口函数--DriverEntry [cpp] view plaincopy // 驱动程序的一般性定义 NTSTATUS DriverEntry(IN PDRIV ...

  10. 软路由(openwrt)的三个基础知识

    openwrt的分支 openwrt openwrt是openwrt的主分支,其官网是:https://openwrt.org/ 默认官方提供的系统镜像功能比较少,基本上只提供了路由器基本功能:如果需 ...

最新文章

  1. 【Web前端培训基础知识】ES5及ES6this详解
  2. c266 设置邮箱_工作邮件如何写?—有效沟通才是你的核心竞争力
  3. JS中的call、apply、bind方法详解
  4. IIS7.5 HTTP 错误 500.19 - Internal Server Error 问题的解决方案
  5. 在DWR中实现直接获取一个JAVA类的返回值的两种方法
  6. 5、CSS 派生选择器
  7. Hibernate插入错误:GenericJDBCException: could not insert:
  8. 服务器开机提示修复,电脑开机提示自动修复怎么办?win10电脑开机提示自动修复教程...
  9. jersey客户端_每个客户使用Jersey处理的Cookie
  10. EntityFramework包含作用
  11. 解决eclipse启动停在一个空白窗口的问题
  12. 记一次网站无法访问解决过程,服务器80端口问题解决过程
  13. python入门代码-Python入门学习系列——Python代码测试
  14. 2020-10-12
  15. Python入门学习三
  16. BottomBar之Android底部菜单
  17. 延长计算机屏幕显示时间,如何设置电脑显示屏保时间
  18. 007 定位明文封包call
  19. python 使用PIL工具包中的pytesseract函数识别英文字符
  20. java affinity_线程亲和性(Thread Affinity)

热门文章

  1. 谷歌验证 (Google Authenticator) 的实现原理是什么?
  2. PHP读取创建txt,doc,xls,pdf类型文件
  3. [WPF]获取控件间的相对位置
  4. 计算机组成结构IR,计算机组成与体系结构试题
  5. python中如何安装django库_python安装好django库,新建django项目
  6. android 悬浮球简书,轻松自制flyme悬浮球
  7. linux以预置密码进行验证拒绝访问,Linux重置MySQL密码
  8. 时间序列分析之:傅里叶变换找周期
  9. c# html文件转换word,C#实现word转换成html文档 源码
  10. android最新框架,XUpdate 一个轻量级、高可用性的Android版本更新框架