php学习之路

之前我更新过一个关于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 是一个语言结构,有无括号均可使用:echo 或 echo()。

显示字符串

下面的例子展示如何用 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)
实例 <?php $x = 5985; var_dump($x); echo "<br>"; $x = -345; // 负数 var_dump($x); echo "<br>"; $x = 0x8C; // 十六进制数 var_dump($x); echo "<br>"; $x = 047; // 八进制数 var_dump($x); ?> PHP 逻辑 $x=true; $y=false; PHP 数组 实例

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() 函数 - 它使用三个参数:

  1. 首个参数定义常量的名称
  2. 第二个参数定义常量的值
  3. 可选的第三个参数规定常量名是否对大小写敏感。默认是 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;
}

工作原理:

  1. 对表达式(通常是变量)进行一次计算
  2. 把表达式的值与结构中 case 的值进行比较
  3. 如果存在匹配,则执行与 case 关联的代码
  4. 代码执行后,break 语句阻止代码跳入下一个 case 中继续执行
  5. 如果没有 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函数是以funcation来定义的  大家都知道函数就是特殊的方法,所以大家就这样理解就简单了
<?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();
?>
再上面的代码中处处的结果是
output:
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的其他内容后续会跟上,希望大家给个面子,点个赞什么的......


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值