之前我更新过一个关于php的一个交互的博客,大家也很给面子,访问量也不算少,对于我这个小学生来说真是三生有幸!!
有的网友说对php不了解,没办法看懂,虽然也想了解这些东西,因为对于h5这个新兴的行业来说,如果你想只是靠前端吃饭的话,真的吃不开,至少你要回数据库和服务器,有助于你和后端的同事更好的合作!php相对于java来说简单好多了所以今天我就更新这么一篇关于php基础的知识,因为时间问题可能只能更新一点,以后续上......
1.PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。
PHP 是免费的,并且使用广泛。对于像微软 ASP 这样的竞争者来说,PHP 无疑是另一种高效率的选项。
首先我们通过一个实例了解一下它的简单语法:<!DOCTYPE html>
<html>
<body>
<?php
echo "我的第一段 PHP 脚本!";
?>
</body>
</html>
可以看出他可以在hml的便于环境下运行,而且它的开始是<?php开始 ,?>结束的很简单 就是有头有尾吗.和html差不多,它的文件扩展名是.php,它的输出是echo这个关键字.
再说一下它的编译器,就是我个人用的是phpstrom,因为我是搞前端开发的,所以我写服务器和前端的时候可以都在一个编译器上开发,很方便,大家这个是要破解的 ,我这里有破解方法 后续我会跟上,大家可以自行下载,
2.HP 中的注释
PHP 代码中的注释不会被作为程序来读取和执行。它唯一的作用是供代码编辑者阅读。
<!DOCTYPE html>
<html>
<body>
<?php
// 这是单行注释
# 这也是单行注释
/*
这是多行注释块
它横跨了
多行
*/
?>
</body>
</html>
3.关于变量
<!doctype html>
<html>
<body>
<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>
</body>
</html>
正如代数,PHP 变量可用于保存值(x=5)和表达式(z=x+y)。
变量的名称可以很短(比如 x 和 y),也可以取更具描述性的名称(比如 carname、total_volume)。
PHP 变量规则:
- 变量以 $ 符号开头,其后是变量的名称
- 变量名称必须以字母或下划线开头
- 变量名称不能以数字开头
- 变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)
- 变量名称对大小写敏感($y 与 $Y 是两个不同的变量)
注释:PHP 变量名称对大小写敏感!
PHP 变量作用域
在 PHP 中,可以在脚本的任意位置对变量进行声明。
变量的作用域指的是变量能够被引用/使用的那部分脚本。
PHP 有三种不同的变量作用域:
- local(局部)
- global(全局)
- static(静态)
4.echo和print语句区别
显示字符串
下面的例子展示如何用 echo 命令来显示不同的字符串(同时请注意字符串中能包含 HTML 标记):
<?php echo "<h2>PHP is fun!</h2>"; echo "Hello world!<br>"; echo "I'm about to learn PHP!<br>"; echo "This", " string", " was", " made", " with multiple parameters.";?> PHP print 语句 显示字符串 <?php print "<h2>PHP is fun!</h2>"; print "Hello world!<br>"; print "I'm about to learn PHP!"; ?> 显示变量 <?php $txt1="Learn PHP"; $txt2="W3School.com.cn"; $cars=array("Volvo","BMW","SAAB"); print $txt1; print "<br>"; print "Study PHP at $txt2"; print "My car is a {$cars[0]}"; ?> PHP 字符串 实例 <?php $x = "Hello world!"; echo $x; echo "<br>"; $x = 'Hello world!'; echo $x; ?> PHP 整数
- 整数必须有至少一个数字(0-9)
- 整数不能包含逗号或空格
- 整数不能有小数点
- 整数正负均可
- 可以用三种格式规定整数:十进制、十六进制(前缀是 0x)或八进制(前缀是 0)
print 也是语言结构,有无括号均可使用:print 或 print()。
下面的例子展示如何用 print 命令来显示不同的字符串(同时请注意字符串中能包含 HTML 标记):
下面的例子展示如何用 print 命令来显示字符串和变量:
字符串是字符序列,比如 "Hello world!"。
字符串可以是引号内的任何文本。您可以使用单引号或双引号:
整数是没有小数的数字。
整数规则:
在下面的例子中,我们将测试不同的数字。PHP var_dump() 会返回变量的数据类型和值:
逻辑是 true 或 false。
逻辑常用于条件测试。您将在本教程稍后的章节学到更多有关条件测试的知识。
数组在一个变量中存储多个值。
在下面的例子中,我们将测试不同的数组。PHP var_dump() 会返回变量的数据类型和值:
<?php $cars=array("Volvo","BMW","SAAB"); var_dump($cars); ?>
PHP 对象
对象是存储数据和有关如何处理数据的信息的数据类型。
在 PHP 中,必须明确地声明对象。
首先我们必须声明对象的类。对此,我们使用 class 关键词。类是包含属性和方法的结构。
然后我们在对象类中定义数据类型,然后在该类的实例中使用此数据类型:
实例
<?php class Car { var $color; function Car($color="green") { $this->color = $color; } function what_color() { return $this->color; } } ?>
5.常量
常量是单个值的标识符(名称)。在脚本中无法改变该值。
有效的常量名以字符或下划线开头(常量名称前面没有 $ 符号)。
注释:与变量不同,常量贯穿整个脚本是自动全局的。
设置 PHP 常量
如需设置常量,请使用 define() 函数 - 它使用三个参数:
- 首个参数定义常量的名称
- 第二个参数定义常量的值
- 可选的第三个参数规定常量名是否对大小写敏感。默认是 false。
下例创建了一个对大小写敏感的常量,值为 "Welcome to W3School.com.cn!":
实例:<?php
define("GREETING", "Welcome to 涨涨涨!");
echo GREETING;
?>
6.运算符
PHP 算数运算符
运算符 | 名称 | 例子 | 结果 |
---|---|---|---|
+ | 加法 | $x + $y | $x 与 $y 求和 |
- | 减法 | $x - $y | $x 与 $y 的差数 |
* | 乘法 | $x * $y | $x 与 $y 的乘积 |
/ | 除法 | $x / $y | $x 与 $y 的商数 |
% | 模数 | $x % $y | $x 除 $y 的余数 |
下例展示了使用不同算数运算符的不同结果:
<?php
$x=10;
$y=6;
echo ($x + $y); // 输出 16
echo ($x - $y); // 输出 4
echo ($x * $y); // 输出 60
echo ($x / $y); // 输出 1.6666666666667
echo ($x % $y); // 输出 4
?>
PHP 赋值运算符
PHP 赋值运算符用于向变量写值。
PHP 中基础的赋值运算符是 "="。这意味着右侧赋值表达式会为左侧运算数设置值。
赋值 | 等同于 | 描述 |
---|---|---|
x = y | x = y | 右侧表达式为左侧运算数设置值。 |
x += y | x = x + y | 加 |
x -= y | x = x - y | 减 |
x *= y | x = x * y | 乘 |
x /= y | x = x / y | 除 |
x %= y | x = x % y | 模数 |
<?php
$x=10;
echo $x; // 输出 10
$y=20;
$y += 100;
echo $y; // 输出 120
$z=50;
$z -= 25;
echo $z; // 输出 25
$i=5;
$i *= 6;
echo $i; // 输出 30
$j=10;
$j /= 5;
echo $j; // 输出 2
$k=15;
$k %= 4;
echo $k; // 输出 3
?>
PHP 字符串运算符
运算符 | 名称 | 例子 | 结果 |
---|---|---|---|
. | 串接 | $txt1 = "Hello" $txt2 = $txt1 . " world!" | 现在 $txt2 包含 "Hello world!" |
.= | 串接赋值 | $txt1 = "Hello" $txt1 .= " world!" | 现在 $txt1 包含 "Hello world!" |
<?php
$a = "Hello";
$b = $a . " world!";
echo $b; // 输出 Hello world!
$x="Hello";
$x .= " world!";
echo $x; // 输出 Hello world!
?>
PHP 递增/递减运算符
运算符 | 名称 | 描述 |
---|---|---|
++$x | 前递增 | $x 加一递增,然后返回 $x |
$x++ | 后递增 | 返回 $x,然后 $x 加一递增 |
--$x | 前递减 | $x 减一递减,然后返回 $x |
$x-- | 后递减 | 返回 $x,然后 $x 减一递减 |
下例展示了使用不同递增/递减运算符的不同结果:
<?php $x=10; echo ++$x; // 输出 11 $y=10; echo $y++; // 输出 10 $z=5; echo --$z; // 输出 4 $i=5; echo $i--; // 输出 5 ?>
PHP 比较运算符
PHP 比较运算符用于比较两个值(数字或字符串):
运算符 | 名称 | 例子 | 结果 |
---|---|---|---|
== | 等于 | $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。 |
> | 大于 | $x > $y | 如果 $x 大于 $y,则返回 true。 |
< | 大于 | $x < $y | 如果 $x 小于 $y,则返回 true。 |
>= | 大于或等于 | $x >= $y | 如果 $x 大于或者等于 $y,则返回 true. |
<= | 小于或等于 | $x <= $y | 如果 $x 小于或者等于 $y,则返回 true。 |
<?php
$x=100;
$y="100";
var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x !== $y);
echo "<br>";
$a=50;
$b=90;
var_dump($a > $b);
echo "<br>";
var_dump($a < $b);
?>
PHP 逻辑运算符
运算符 | 名称 | 例子 | 结果 |
---|---|---|---|
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。 |
PHP 数组运算符
PHP 数组运算符用于比较数组:
运算符 | 名称 | 例子 | 结果 |
---|---|---|---|
+ | 联合 | $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。 |
<?php
$x = array("a" => "red", "b" => "green");
$y = array("c" => "blue", "d" => "yellow");
$z = $x + $y; // $x 与 $y 的联合
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
?>
7.语句
在你编写代码时,经常会希望为不同的决定执行不同的动作。你可以在代码中使用条件语句来实现这一点。
在 PHP 中,我们可以使用以下条件语句:
- if 语句 - 如果指定条件为真,则执行代码
- if...else 语句 - 如果条件为 true,则执行代码;如果条件为 false,则执行另一端代码
- if...elseif....else 语句 - 选择若干段代码块之一来执行
- switch 语句 - 语句多个代码块之一来执行
PHP - if 语句
if 语句用于在指定条件为 true 时执行代码。
语法
if (条件) { 当条件为 true 时执行的代码; }
PHP - if...else 语句
请使用 if....else 语句在条件为 true 时执行代码,在条件为 false 时执行另一段代码。
语法
if (条件) { 条件为 true 时执行的代码; } else { 条件为 false 时执行的代码; }
下例将输出 "Have a good day!",如果当前时间 (HOUR) 小于 20,否则输出 "Have a good night!":
PHP - if...elseif....else 语句
请使用 if....elseif...else 语句来选择若干代码块之一来执行。
语法
if (条件) { 条件为 true 时执行的代码; } elseif (condition) { 条件为 true 时执行的代码; } else { 条件为 false 时执行的代码; }
下例将输出 "Have a good morning!",如果当前时间 (HOUR) 小于 10,如果当前时间小于 20,则输出 "Have a good day!"。否则将输出 "Have a good night!":
Switch 语句
如果您希望有选择地执行若干代码块之一,请使用 Switch 语句。
使用 Switch 语句可以避免冗长的 if..elseif..else 代码块。
语法
switch (expression) { case label1: code to be executed if expression = label1; break; case label2: code to be executed if expression = label2; break; default: code to be executed if expression is different from both label1 and label2; }
工作原理:
- 对表达式(通常是变量)进行一次计算
- 把表达式的值与结构中 case 的值进行比较
- 如果存在匹配,则执行与 case 关联的代码
- 代码执行后,break 语句阻止代码跳入下一个 case 中继续执行
- 如果没有 case 为真,则使用 default 语句
<?php
switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>
</body>
</html>
8.重要的五体投地的for循环
PHP for 循环
如果您已经提前确定脚本运行的次数,可以使用 for 循环。
语法
for (init counter; test counter; increment counter) { code to be executed; }
参数:
- init counter:初始化循环计数器的值
- test counter:: 评估每个循环迭代。如果值为 TRUE,继续循环。如果它的值为 FALSE,循环结束。
- increment counter:增加循环计数器的值
下面的例子显示了从 0 到 10 的数字:
<?php
for ($x=0; $x<=10; $x++) {
echo "数字是:$x <br>";
}
?>
9.重中之重!!!函数
函数部分我想放在一个单一的文章中讲的 但是还是说了 吧 因为这个不好理解<?php
function writeMsg() {
echo "Hello world!";
}
writeMsg(); // 调用函数
?>
大家看上面的代码,第一 我用funcation自己定义了一个函数,就是writeMsg函数,函数里面我是输出了一句话,最熟悉的H w,
writeMsg(); // 调用函数,很简单.
<pre name="code" class="php"><?php
function familyName($fname) {
echo "$fname Zhang.<br>";
}
familyName("Li");
familyName("Hong");
familyName("Tao");
familyName("Xiao Mei");
familyName("Jian");
?>
上面的代码就是传说中的需要传参数的函数,就是函数方法括号里面的那个$fname,很简单,就是字啊这里写上就行了,然后在下面调用的时候在方法里面传入一个对应的参数就行了,但是大家一定要加上""我刚工作的时候因为这个吃了好多亏,大家一定不要马虎.
当然也可以传入两个参数的,和上面的一样的,只是在第二个参数和第一个参数之间加一个,逗号就好了,传入的时候也是.
下面说一下返回值!
<?php
function sum($x,$y) {
$z=$x+$y;
return $z;
}
echo "5 + 10 = " . sum(5,10) . "<br>";
echo "7 + 13 = " . sum(7,13) . "<br>";
echo "2 + 4 = " . sum(2,4);
?>
上面这个代码中 有一个return大家看到了吧,后面根这一个上面定义的变量,返回值很简单,就是当你调用定义的函数后,如果有返回值,就在执行完之后返回的值,字面意思就能看懂了.
10.我学了好久的构造函数
<?php
class BaseClass {
function __construct() {
print "In BaseClass constructor\n";
}
}
class SubClass extends BaseClass {
function __construct() {
parent::__construct();
print "In SubClass constructor\n";
}
}
class OtherSubClass extends BaseClass {
}
$obj = new BaseClass();
$obj = new SubClass();
$obj = new OtherSubClass();
?>
再上面的代码中处处的结果是
In BaseClass constructor
In BaseClass constructor
In SubClass constructor
In BaseClass constructor
我写的是默认的无参构造函数,这里面涉及到了继承的概念,就是
class SubClass extends BaseClass {
function __construct() {
parent::__construct();
print "In SubClass constructor\n";
}
}
SubClass继承了BaseClass类,那么即是说自雷会拥有夫类的所有类!所有方法 和函数
$obj = new BaseClass();
那么就会执行BaseClass()然后第一次输出In BaseClass constructor
第二步就是第二个对象呗创建,执行第二个函数,但是它继承自BaseClass.所以首先执行夫类的方法,再次打印BaseClass.然后打印自己类的SubClass;
第三步就是第三个对象被创建,直接执行父类BaseClass,只是打印了BaseClass了 所以就是这样的了.
因为时间原因,今天就到这 关于php的其他内容后续会跟上,希望大家给个面子,点个赞什么的......