IT教育在线职业教育领导品牌,专注设计与IT人才培训
IT培训网 IT知识库 大学生招聘网
首页 培训就业 教学保障 教学模式 师资力量 IT知识库 专题活动 关于我们

php基础知识笔记分享

2018-06-01 09:51:43 来源:泛艺学苑

距活动结束时间仅剩8

  无压力学习

一、定义

PHP 脚本在服务器上执行,然后向浏览器发送回纯 HTML 结果。本文主要和大家分享php基础知识笔记,希望能帮助到大家。

二、基本语法

<?phpecho "Hello World!";?>

注意事项
  1. PHP 语句以分号结尾(;)

  2. PHP 代码块的最后一行不必使用分号

1.注释

PHP有三种注释方式
<!DOCTYPE html><html><body><?php// 这是单行注释# 这也是单行注释/*

这是多行注释块

它横跨了

多行

*/?></body></html>

2.大小写敏感

  • 所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感

  • 所有变量都对大小写敏感

3.变量

1.PHP 没有创建变量的命令

2. 变量命名规则

  • 变量以 $ 符号开头,其后是变量的名称

  • 变量名称必须以字母或下划线开头

  • 变量名称不能以数字开头

  • 变量名称对大小写敏感($y 与 $Y 是两个不同的变量)

3.PHP 有三种不同的变量作用域:local(局部)global(全局)static(静态)

  • 函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。

  • 函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。

在函数内部访问外部变量的方法
//使用 global 关键词

<?php

$x=5;

$y=10;

function myTest() {

global $x,$y;

$y=$x+$y;

}

myTest();

echo $y; // 输出 15?>//PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。

<?php

$x=5;

$y=10;

function myTest() {

$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];

}

myTest();echo $y; // 输出 15?>

4.输出语句echo与print

语法
<?php  

$a='hello ';$b='php world!';echo $a,$b,'<br />';//echo 可以用逗号分隔字符串变量来显示

print $a.$b.'<br />';//而print不能使用逗号,只能用点号分隔,

?>

区别
  1. echo 命令和print命令相同,没有区别

  2. echo 函数和print函数有区别

  3. echo() 无返回值,与echo命令相同

  4. print() 有返回值,成功,返1,false,返0

5.运算符(仅记异于JS)

符号名称例子解释
串接

.串接$txt1 = "Hello" $txt2 = $txt1 . " world!"现在 $txt2 包含 “Hello world!”
.=串接赋值$txt1 = "Hello" $txt1 .= " world!"现在 $txt1 包含 “Hello world!”
比较

<>不等于$x <> $y"如果 $x 不等于 $y,则返回 true。
逻辑

and$x and $y如果 $x 和 $y 都为 true,则返回 true。
or$x or $y如果 $x 和 $y 至少有一个为 true,则返回 true。
xor异或$x xor $y如果 $x 和 $y 有且仅有一个为 true,则返回 true。
&&$x && $y如果 $x 和 $y 都为 true,则返回 true。
||$x || $y如果 $x 和 $y 至少有一个为 true,则返回 true。
!!$x如果 $x 不为 true,则返回 true。
数组运算符

+联合$x + $y$x 和 $y 的联合(但不覆盖重复的键,相同键保留第一个)
==相等$x == $y如果 $x 和 $y 拥有相同的键/值对,则返回 true。
===全等$x === $y如果 $x 和 $y 拥有相同的键/值对,且顺序相同类型相同,则返回 true。
!=不相等$x != $y如果 $x 不等于 $y,则返回 true。
<>不相等$x <> $y如果 $x 不等于 $y,则返回 true。
!==不全等$x !== $y如果 $x 与 $y 完全不同,则返回 true。

6.判断与循环

判断:
  • if…else…语句

  • switch语句

循环:
  • for循环

  • foreach循环

foreach循环示例
<?php 

$colors = array("red","green","blue","yellow");

foreach ($colors as $value) {

echo "$value <br>";

}

?>//输出 red 、 green 、 blue 、 yellow

7.引用

PHP引用有两种方式:include 与 require

include 和 require 语句是相同的,除了错误处理方面:
  • require 会生成致命错误(E_COMPILE_ERROR)并停止脚本

  • include 只生成警告(E_WARNING),并且脚本会继续

语法:

include 'filename'

require 'filename'

8.超全局变量

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $_FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

$GLOBALS — 引用全局作用域中可用的全部变量
<?php $x = 75; 

$y = 25;function addition() {

$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];

}

addition();

echo $z;

?>

PHP $_SERVER

$_SERVER 这种超全局变量保存关于报头、路径和脚本位置的信息。

元素描述
$_SERVER[‘PHP_SELF’]返回当前执行脚本的文件名。
$_SERVER[‘GATEWAY_INTERFACE’]返回服务器使用的 CGI 规范的版本。
$_SERVER[‘SERVER_ADDR’]返回当前运行脚本所在的服务器的 IP 地址。
$_SERVER[‘SERVER_NAME’]返回当前运行脚本所在的服务器的主机名(比如 www.w3school.com.cn)。
$_SERVER[‘SERVER_SOFTWARE’]返回服务器标识字符串(比如 Apache/2.2.24)。
$_SERVER[‘SERVER_PROTOCOL’]返回请求页面时通信协议的名称和版本(例如,“HTTP/1.0”)。
$_SERVER[‘REQUEST_METHOD’]返回访问页面使用的请求方法(例如 POST)。
$_SERVER[‘REQUEST_TIME’]返回请求开始时的时间戳(例如 1577687494)。
$_SERVER[‘QUERY_STRING’]返回查询字符串,如果是通过查询字符串访问此页面。
$_SERVER[‘HTTP_ACCEPT’]返回来自当前请求的请求头。
$_SERVER[‘HTTP_ACCEPT_CHARSET’]返回来自当前请求的 Accept_Charset 头( 例如 utf-8,ISO-8859-1)
$_SERVER[‘HTTP_HOST’]返回来自当前请求的 Host 头。
$_SERVER[‘HTTP_REFERER’]返回当前页面的完整 URL(不可靠,因为不是所有用户代理都支持)。
$_SERVER[‘HTTPS’]是否通过安全 HTTP 协议查询脚本。
$_SERVER[‘REMOTE_ADDR’]返回浏览当前页面的用户的 IP 地址。
$_SERVER[‘REMOTE_HOST’]返回浏览当前页面的用户的主机名。
$_SERVER[‘REMOTE_PORT’]返回用户机器上连接到 Web 服务器所使用的端口号。
$_SERVER[‘SCRIPT_FILENAME’]返回当前执行脚本的绝对路径。
$_SERVER[‘SERVER_ADMIN’]该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。
$_SERVER[‘SERVER_PORT’]Web 服务器使用的端口。默认值为 “80”。
$_SERVER[‘SERVER_SIGNATURE’]返回服务器版本和虚拟主机名。
$_SERVER[‘PATH_TRANSLATED’]当前脚本所在文件系统(非文档根目录)的基本路径。
$_SERVER[‘SCRIPT_NAME’]返回当前脚本的路径。
$_SERVER[‘SCRIPT_URI’]返回当前页面的 URI。
PHP $_REQUEST

PHP $_REQUEST 用于收集 HTML 表单提交的数据。

<html><body><form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">

Name: <input type="text" name="fname"><input type="submit"></form><?php $name = $_REQUEST['fname'];

echo $name;

?></body></html>

三、数据类型

1.字符串函数

PHP strlen() 函数

strlen() 函数返回字符串的长度,以字符计。

<?phpecho strlen("Hello world!");?>//结果输出12(多个连续的空格不会被看作同一个)

PHP strpos() 函数

strpos() 函数用于检索字符串内指定的字符或文本。

如果找到匹配,则会返回首个匹配的字符位置。如果未找到匹配,则将返回 FALSE。

<?phpecho strpos("Hello world!","world");?>//返回 6

2.常量及设置常量

  • 常量是单个值的标识符(名称)。在脚本中无法改变该值。

  • 有效的常量名以字符或下划线开头(常量名称前面没有 $ 符号)。

  • 与变量不同,常量贯穿整个脚本是自动全局的。

    设置常量函数 define()
  • 首个参数定义常量的名称

  • 第二个参数定义常量的值

  • 可选的第三个参数规定常量名是否对大小写不敏感。默认是 false。

<?phpdefine("PAI", "3.14", true);echo pai;?>//创建一个对大小写不敏感的常量

3.数组

PHP有三种数组形式:
  • 索引数组 - 带有数字索引的数组

  • 关联数组 - 带有指定键的数组

  • 多维数组 - 包含一个或多个数组的数组

数组相关函数
  • array() 用于创建数组

  • count() 用于得出数组长度

  • sort() - 以升序对数组排序

  • rsort() - 以降序对数组排序

  • asort() - 根据值,以升序对关联数组进行排序

  • ksort() - 根据键,以升序对关联数组进行排序

  • arsort() - 根据值,以降序对关联数组进行排序

  • krsort() - 根据键,以降序对关联数组进行排序

关联数组的创建与循环
<?php //关联数组使用foreach循环

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

foreach($age as $x=>$x_value) {

echo "Key=" . $x . ", Value=" . $x_value;

echo "<br>";

}?>

多维数组的创建
$cars = array

( array("Volvo",22,18), array("BMW",15,13), array("Saab",5,2), array("Land Rover",17,15)

);

四、功能函数

1.日期函数

PHP Date() 函数

语法:date(format,timestamp)

  1. PHP Date() 函数把时间戳格式化为更易读的日期和时间。

  2. format格式:

    • d - 表示月里的某天(01-31)

    • m - 表示月(01-12)

    • Y - 表示年(四位数)

    • h - 带有首位零的 12 小时小时格式

    • i - 带有首位零的分钟

    • s - 带有首位零的秒(00 -59)

    • a - 小写的午前和午后(am 或 pm)

    • 1 - 表示周里的某天

    • 其他字符,比如 “/”, “.” 或 “-” 也可被插入字符中,以增加其他格式

<?php//不传第二个参数,默认是目前的时间。echo "今天是 " . date("Y/m/d") ;?>

PHP mktime()

mktime() 函数返回日期的 Unix 时间戳。Unix 时间戳包含 Unix 纪元(1970 年 1 月 1 日 00:00:00 GMT)与指定时间之间的秒数。

语法:mktime(hour,minute,second,month,day,year)。

相关推荐:

php基础知识总结(新手必备)

php基础知识掌握——四种界定符

php基础知识总结,学完这些直接晋级高级php程序员

以上就是php基础知识笔记分享的详细内容,更多请关注php中文网其它相关文章!

免责声明:本文来源于网络,由网友提供或网络搜集,仅供个人交流学习参考使用,不涉及商业盈利目的。如有版权问题,请联系本站管理员予以更改或删除。谢谢合作!

相关阅读

热门标签: 基础知识 php 笔记

大家都在看

大数据培训机构 UI培训哪家好

互联网资讯

开班时间

推荐阅读