php在线编辑工具:菜鸟教程在线编辑器 (runoob.com)

php集成环境:phpStudy V8.1下载(Win64位) - 官方最新版本(不断更新)-php中文网工具下载

基本的 PHP 语法

  • PHP 文件的默认文件扩展名是 ".php"。
  • PHP 文件通常包含 HTML 标签和一些 PHP 脚本代码
<!DOCTYPE html>
<html>
<body> <h1>My first PHP page</h1> <?php
echo "Hello World!";
?> </body>
</html>

PHP有两种在浏览器输出文本的基础指令:echo 和 print

  • echo - 可以输出一个或多个字符串;echo 没有返回值
  • print - 只允许输出一个字符串;print有返回值1
<!DOCTYPE html>
<html>
<body> <?php
echo "这是一个", "字符串,", "使用了", "多个", "参数。"
print "你好"
?> </body>
</html>

PHP 变量以 $ 符号开始

PS:PHP 是一门弱类型语言,不必向 PHP 声明该变量的数据类型。PHP 会根据变量的值,自动把变量转换为正确的数据类型。而在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称

<!DOCTYPE html>
<html>
<body> <?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?></body>
</html>

php局部和全局作用域

  • 定义在函数外部的就是全局变量,它的作用域从定义处一直到文件结尾。
  • 函数内定义的变量就是局部变量,它的作用域为函数定义范围内。
  • 函数之间存在作用域互不影响。
  • 函数内访问全局变量需要 global 关键字或者使用 $GLOBALS[index] 数组
<?php
$x=5;
$y=10;function myTest()
{global $x,$y;$y=$x+$y;
}myTest();
echo $y; // 输出 15
?>

PHP 数据类型

  • String(字符串)
<?php
$x = "Hello world!";
echo $x;
echo "<br>";
$x = 'Hello world!';
echo $x;
?>
  • Integer(整型):整数是一个没有小数的数字

var_dump() 函数返回变量的数据类型和值

print_r 如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素

<?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);
?>
  • Float(浮点型):浮点数是带小数部分的数字
<?php
$x = 10.365;
var_dump($x);
echo "<br>";
$x = 2.4e3;
var_dump($x);
echo "<br>";
$x = 8E-5;
var_dump($x);
?>
  • Boolean(布尔型)
$x=true;
$y=false;
  • Array(数组)
<?php
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
?
  • Object(对象)
<?php
class Car
{var $color;function __construct($color="green") {$this->color = $color;}function what_color() {return $this->color;}
}
?>
  • NULL(空值)
<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>
  • Resource(资源类型)

PHP 类型比较

  • 松散比较:使用两个等号 == 比较,只比较值,不比较类型。
  • 严格比较:用三个等号 === 比较,除了比较值,也比较类型。

PHP 常量:常量在定义后,默认是全局变量

设置常量,使用 define() 函数:

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )//name:必选参数,常量名称,即标志符。
//value:必选参数,常量的值。
//case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感,默认是大小写敏感的。
<?php
// 区分大小写的常量名
define("GREETING", "欢迎访问 Runoob.com");
echo GREETING;    // 输出 "欢迎访问 Runoob.com"
echo '<br>';
echo greeting;   // 输出 "greeting",但是有警告信息,表示该常量未定义
?>

字符串变量

  • 并置运算符:并置运算符 (.) 用于把两个字符串值连接起来
<?php
$txt1="Hello world!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
  • strlen() 函数:strlen() 函数返回字符串的长度(字节数)

<?php
echo strlen("Hello world!");
?>
  • strpos() 函数:用于在字符串内查找一个字符或一段指定的文本;如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
<?php
echo strpos("Hello world!","world");
?>

PHP If...Else 语句

<?php
$t=date("H");
if ($t<"20")
{echo "Have a good day!";
}
else
{echo "Have a good night!";
}
?>

PHP Switch 语句

break 来阻止代码跳入下一个 case 中继续执行。default 语句用于不存在匹配(即没有 case 为真)时执行。

<?php
$favcolor="red";
switch ($favcolor)
{
case "red":echo "你喜欢的颜色是红色!";break;
case "blue":echo "你喜欢的颜色是蓝色!";break;
case "green":echo "你喜欢的颜色是绿色!";break;
default:echo "你喜欢的颜色不是 红, 蓝, 或绿色!";
}
?>

PHP 数组

声明数组:

<?php
$cars=array("Volvo","BMW","Toyota");
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>

遍历数组:

<?php
$cars=array("Volvo","BMW","Toyota");
$arrlength=count($cars);for($x=0;$x<$arrlength;$x++)
{echo $cars[$x];echo "<br>";
}
?>

数组排序:

  • sort() - 对数组进行升序排列
  • rsort() - 对数组进行降序排列
  • asort() - 根据关联数组的值,对数组进行升序排列
  • ksort() - 根据关联数组的键,对数组进行升序排列
  • arsort() - 根据关联数组的值,对数组进行降序排列
  • krsort() - 根据关联数组的键,对数组进行降序排列

PHP 超级全局变量

$GLOBALS 是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问有。$GLOBALS 是一个包含了全部变量的全局组合数组。变量的名字就是数组的键。

<?php
$x = 75;
$y = 25;function addition()
{ $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}addition();
echo $z;
?>

循环 - While 循环

  • while - 只要指定的条件成立,则循环执行代码块
<?php
$i=1;
while($i<=5)
{echo "The number is " . $i . "<br>";$i++;
}
?>
  • do...while - 首先执行一次代码块,然后在指定的条件成立时重复这个循环
<?php
$i=1;
do
{$i++;echo "The number is " . $i . "<br>";
}
while ($i<=5);
?>
  • for - 循环执行代码块指定的次数
<?php
for ($i=1; $i<=5; $i++)
{echo "数字为 " . $i . PHP_EOL;
}
?>
  • foreach - 根据数组中每个元素来循环代码块
<?php
$x=array("Google","Runoob","Taobao");
foreach ($x as $value)
{echo $value . PHP_EOL;
}
?>

PHP 函数

<?php
function writeName($fname)
{echo $fname . " Refsnes.<br>";
}echo "My name is ";
writeName("Kai Jim");
echo "My sister's name is ";
writeName("Hege");
echo "My brother's name is ";
writeName("Stale");
?>
// php 实现动态规划的菲波那契:
<?php
function fibonaci($a)
{$x=0;$y=1;$ret=0;$count=0;while($count<$a){$ret=$x+$y;$x=$y;$y=$ret;$count++;}return $ret;
}
echo fibonaci(4);
?>

PHP 魔术常量

  • __LINE__:文件中的当前行号
  • __FILE__:文件的完整路径和文件名
  • __DIR__:文件所在的目录
  • ......

命名空间

目的是解决重名问题,PHP中不允许两个函数或者类出现相同的名字

<?php
namespace MyProject {const CONNECT_OK = 1;class Connection { /* ... */ }function connect() { /* ... */  }
}namespace AnotherProject {const CONNECT_OK = 1;class Connection { /* ... */ }function connect() { /* ... */  }
}
?>

PHP 面向对象

PHP_EOL 是一个常量,表示操作系统特定的换行符

<?php
//类使用 class 关键字后加上类名定义
class Site { /* 成员变量 */ var $url; var $title; /* 成员函数 */ function setUrl($par){ $this->url = $par; } function getUrl(){ echo $this->url . PHP_EOL; }
} $php = new Site; // 调用成员函数,设置URL
$php->setUrl( 'www.php.cn' ); // 调用成员函数,获取URL
$php->getUrl();
?>
  • 构造函数:
<?php
class Site {/* 成员变量 */var $url;var $title;function __construct( $par1, $par2 ) {$this->url = $par1;$this->title = $par2;}/* 成员函数 */function setUrl($par){$this->url = $par;}function getUrl(){echo $this->url . PHP_EOL;}
}$php = new Site('www.php.cn', 'php中文网'); // 调用成员函数,获取URL
$php->getUrl(); ?>
  • 析构函数

当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。

  • 继承:extends
  • 重写:父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写
  • 访问控制:PHP 对属性或方法的访问控制,是通过在前面添加关键字 public(公有),protected(受保护)或 private(私有)来实现的

public(公有):公有的类成员可以在任何地方被访问。

protected(受保护):受保护的类成员则可以被其自身以及其子类和父类访问。

private(私有):私有的类成员则只能被其定义所在的类访问。

【PHP】初学者开篇入门版相关推荐

  1. [好学、好用、好玩的Photoshop.写给初学者的入门书].李金明等.扫描版

    [好学.好用.好玩的Photoshop.写给初学者的入门书].李金明等.扫描版 链接:https://pan.baidu.com/s/1hA73UYfKY3yMlye2tyac-w 提取码:vugu

  2. python基础教程书籍推荐-初学者python入门必看书籍推荐(上)

    随着最近Python的热度上涨,学习的人数也在增多,也因为Python这门语言的简短.易学.语言优美的优点,吸引了很多人来学习它.初学者想要入门,就必须先通过阅读,学习大量的理论知识对Python有一 ...

  3. python入门必备指南-致Python初学者 Anaconda入门使用指南完整版

    打算学习 Python 来做数据分析的你,是不是在开始时就遇到各种麻烦呢? 到底该装 Python2 呢还是 Python3 ? 为什么安装 Python 时总是出错? 怎么安装工具包呢? 为什么提示 ...

  4. python语言入门p-python初学者怎么入门

    据百度大数据统计每月有4260705的用户在百度检索Python相关介绍,在大众周围,也总是充斥着各种如何学习Python的声音,许多人已经对于是否"应该学习Python"也都发表 ...

  5. python编程入门指南 代码库在哪下-致Python初学者 Anaconda入门使用指南完整版

    打算学习 Python 来做数据分析的你,是不是在开始时就遇到各种麻烦呢? 到底该装 Python2 呢还是 Python3 ? 为什么安装 Python 时总是出错? 怎么安装工具包呢? 为什么提示 ...

  6. python入门教程非常详细-python初学者怎么入门:python入门教程非常详细

    python安装后如何打开 ,先找到python安装位置. python学习网,大量的免费python入门教程,在线学习! 进装目录之后,点击Lib文件夹. 相关推荐:<Python教程> ...

  7. MarkDown总结(适合初学者快速入门)

    本文转自MarkDown总结(适合初学者快速入门)_小异常的博客-CSDN博客_markdown快速入门 总得的来说,MarkDown是一种简单.轻量级的标记语法,它是基于HTML之上,使用简洁的语法 ...

  8. 100小时学会sap傻瓜式入门版生产计划pp篇

    100小时学会sap傻瓜式入门版-生产计划pp篇 生产计划: 1.定义生产计划参数文件,生产计划参数文件可以分配给物料或者生产计划员.分配给物料主数据的生产计划参数具有更高的优先级.在创建生产订单时, ...

  9. python初学者怎么入门-python初学者怎么入门

    据百度大数据统计每月有4260705的用户在百度检索Python相关介绍,在大众周围,也总是充斥着各种如何学习Python的声音,许多人已经对于是否"应该学习Python"也都发表 ...

最新文章

  1. java多线程绘图_菜鸟学Java之 Java2D 多线程绘图
  2. java计算数组均值
  3. 给mysql数据库设计编码_MYSQL数据库编码原理
  4. java kinect 人体识别_基于三个kinect的人体建模
  5. Kafka监控:Kafka-Manager
  6. 数据结构 3-2-2 队列的顺序存储实现
  7. 敏捷开发智慧敏捷系列之四:每日立会开多久?
  8. 已获千赞,从理论到实践!
  9. CoolBlog开发笔记第2课:搭建开发环境
  10. UNIGUI接收普通消息和被动回复用户消息
  11. paip.FTP服务架设选型
  12. vue展示日历 考勤展示_vue实现简单的日历效果
  13. 《Python参考手册》3 类型与对象
  14. 谈谈我对网站的个人规划
  15. 软件研发成本构成中的间接成本包括哪些?
  16. win10并排显示窗口怎么不能占据全屏
  17. vus3+Ts Apache ECharts 的使用(可视化图表库)
  18. 常用元数据标准/受控词表/本体词汇表/的命名空间前缀及IRI链接汇总
  19. MATLAB+CPLEX+YALMIP的几大安装注意点
  20. 什么都不会的应届生怎么找工作?

热门文章

  1. css3 vh单位使用
  2. 仿淘宝搜索框之---ie9以下版本placeholder效果
  3. V8引擎和JS垃圾回收机制的详解
  4. 【技术解密】SequoiaDB分布式存储原理
  5. uniapp使用ucharts数据过多时可拖动图表
  6. jacobi 矩阵行列式
  7. 使用STM32F103C8T6驱动MAX6675读取热电偶数据
  8. 精诚团结续写传说武汉新员工培训美团站长推荐这几家路线
  9. IOS 系统层次结构及服务
  10. 关于三星手机照相机调用适配问题Android