php基础阶段内容:
1 php 基本概念,常规语法
什么是php:
PHP中文名是超文本预处理器,是一种服务端的,嵌入HTML的脚本语言。
php的注释方式:
//开头单行注释。 #开头单行注释。 /*开头 */结束多行注释。
php现在的最新版本:
5.6.22 / 5.5.36 / 7.07
wamp是什么?
一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,
拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台
php的数据类型:
Bool、integer、float、string、object、array、null(代表什么都没有)、resource(资源)
php中字符串的单引号和双引号的区别
PHP允许我们在双引号串中直接包含字符串变量,双引号字符串中的变量将被解释而且替换,而单引号串中的内容总被认为是普通字符。单引号的
效率更高
php的随机数函数?不带参数和带参数有什么区别?
rand、 mt_rand:不带参数是没有限定它的范围,最小值是0。有参数就是限定了它的范围,限定了最小值和最大值。
怎么定义常量?
使用define() 函数设置常量
怎么输出内容到页面显示?
echo(“内容”或者‘内容’)。
echo、print_r、var_dump区别?
echo 用于输出数值变量或者是字符串。但使用echo来输出引用变量时,如数组,仅输出数组的名字;
print_r(expression)的作用是输出一个数组,实际上参数expression的类型可为数值变量和引用变量;
var_dump(expression)函数的输出结果<变量类型,变量值,变量长度>,参数expression表示各种变量类型,作用是输出一个变量的详细信息。
2 php基础函数(数组、日期、字符串)
怎么定义一个数组?
$array = array(“值”,“值”);
怎么给数组新增加1个值?
$array[下标]=“值”
foreach语法结构?
foreach($array as $key=>$value){
}
删除数组中的指定元素 array_splice()
数组的排序 sort()和rsort() 按键值排序sort()从小到大,rsort()从大到小
array_unique() 去除数组中的相同元素
in_array()检测一个值是否在数组中(返回true和false)
array_search()返回的是键或值,返回的是键值所对应的键名
array_pop() - 删除数组中的最后一个元素
array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
array_search()- 按元素值返回键名
怎么获取当前的日期时间?
date_default_timezone_set("PRC");
date("y-m-d H:i:s");
怎么格式化显示当前的日期时间?
echo date("y-m-d H:i:s");
系统默认的是哪个地区的时间?
格林威治时间
怎么修改系统的默认时区?
date_default_timezone_set("PRC");
获取字符串的长度?
strlen函数
将字符串全部转换为小写或大写?
strtolower();
strtoupper();
查找字符在字符串中第一次或最后一次出现的位置?
第一次出现:strpos();
最后一次出现:strrchr();
3 web开发(http协议)
http的中文名称?现在的最新版本是多少?访问时的默认端口号?
中文名称:超文本传输协议;
最新版本:1.1;
默认端口号:80;
http协议的特点?
http遵循请求/响应模型,简单快速,灵活,无连接,无状态。
http的信息处理流程?
客户端发送请求给服务器端,服务器端把接收到的信息进行处理,然后返回响应给客户端。
请求信息分为几个部分?
请求行、请求头(传递的消息格式,浏览器名称,保留的cookie信息)、空行、消息体。
请求方式共计有几种?我们常用的是哪2中请求方式?
8种;get、post;
请求行中包含哪些信息内容?
请求方法,URL,http版本。
请求头中会包含哪些信息?
传递的消息格式,浏览器名称,保留的cookie信息
响应信息分为几个部分?
状态行、响应头、状态码、消息体。
状态行中包含哪些信息?
状态行由协议版本、数字形式的状态代码、及相应的状态描述;
状态码分几类?分别代表啥意思?列举常见的状态码及其含义?
5类;
1xx:指示信息--表示请求已接收,继续处理
2xx:成功--表示请求已被成功接收、理解、接受
3xx:重定向--要完成请求必须进行更进一步的操作
4xx:客户端错误--请求有语法错误或请求无法实现
5xx:服务器端错误--服务器未能实现合法的请求
200 - 服务器成功返回网页
404 - 请求的网页不存在
503 - 服务器超时
EGPCS指代的是什么?
系统预定义变量的缩写
怎么获取访问用户的IP地址?
$_SERVER["REMOTE_ADDR"];
请求中的Get和Post区别?
单词不一样,get以明文的方式放在地址栏中。post长度没有限制,get有限制
如果要上传文件需要进行哪些设置?
文件大小、上传文件的类型
上传文件的信息怎么提取?
$_FILES打印出来。
怎么获取当前文件的路径和名称?
获取当前文件的路径:$_FILES["file"]["tmp_name"];
返回文件名称:basename()函数;
怎么获取当前文件的文件夹路径?
dirname(_File_)或者getcwd()函数;
怎么解决http无状态的问题?
用cookie或者session;
什么是cookie?
cookie 是一种服务器留在用户计算机上的小文件。每当同一台计算机通过浏览器请求页面时,这台计算机将会发送 cookie。
什么是session?
session其实就是保存状态信息的一种机制。
cookie和session的区别?
1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、考虑到安全应当使用session。
3、 考虑到减轻服务器性能方面,应当使用COOKIE。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
怎么创建设置cookie信息?
setcookie(cookie名,值);
怎么使用session?
sesstion_start(); // 首先开启session
$_SESSION['user'] = 'username'; // 把username存在$_SESSION['user'] 里面
echo $_SESSION['user']; // 直接输出 username
session_destroy(); // 销毁session
session的常见函数有哪些?各有什么用处?
session_destroy — 销毁一个会话中的全部数据;
session_id — 获取/设置当前会话 ID;
session_start — 启动新会话或者重用现有会话;
如果客户端禁止了cookie怎么处理?
在禁用 Cookie 的浏览器中使用 Session
4 ajax
ajax的中文名称?
阿贾克斯;
ajax简述?
AJAX 是 Asynchronous JavaScript And XML 的首字母缩写。
AJAX 并不是一种新的编程语言,而仅仅是一种新的技术,它可以创建更好、更快且交互性更强的 web 应用程序。
ajax中包含哪些技术?
包括:HTML、CSS、js、DOM、XML、json。
ajax对象有哪些常用函数,及其功能?
open:规定请求的类型、URL 以及是否异步处理请求。
send:将请求发送到服务器;
ajax对象的常用属性有哪些?
readystate/status。
jquery的ajax函数格式及其常用参数、写法?
$.ajax({
type: "GET",
url: "test.json",
data: {username:$("#username").val(), content:$("#content").val()},
dataType: "json",
success: function(data){
$('#resText').empty(); //清空resText里面的所有内容
var html = '';
$.each(data, function(commentIndex, comment){
html += '<div class="comment"><h6>' + comment['username']
+ ':</h6><p class="para"' + comment['content']
+ '</p></div>';
});
$('#resText').html(html);
}
});
5 php+mysql(mysql函数)
要连接mysql之前的要设置什么?
要打开数据库;
php操作mysql数据库的步骤?
1)连接:MySQL-connect,2)选择数据库:MySQL-select-db,3)发送SQL语句:MySQL-query,4)处理结果:MySQL-fetch-array,
5)关闭:MySQL-close。
创建数据库连接的函数?参数有几个?每个参数代表什么含义?
MySQL—connect://参数共计5个
第一个参数: 服务器名称或者地址,同时可以加上端口号(如果是默认的3306,则可以省略)
第二个参数: 登录的用户名,第三个参数:登录密码
第四个参数: 是否使用可能重名的相同连接对象(如果该对象已经创建),默认为false
第五个参数: 常量组合,设置连接的模式,默认值为0连接成功,返回结果为资源类型;如果失败,报错并且返回false。
怎么选择要操作的数据库名称?
MySQL-select-db(“数据库名”,);
执行sql语句的函数?该函数返回值是什么类型?
MySQL-query; 资源类型(resource);
怎么获取查询结果集的数量?
mysql_num_rows ;
怎么提取结果集中的数据?提取出来的数据是什么样的格式?
mysql_fetch_array (); 是数组
怎么关闭数据库连接?
MySQL-close();
6 其他
empty()
检查一个变量是否为空;如果是非空或非零的值,结果为false;如果是空值为true;
isset()
检测变量是否设置,并且不是 NULL 。
gettype()
获取变量的类型;
settype()
设置变量的类型;
错误控制运算符 @
意思:去掉警告;
执行运算符 `
字符串拼接 .
定界符 <<<+名称