1、 使用的mac电脑,集成环境安装的是 MAMP(Apache Server、Mysql、PHP)。
左上角 MAMP -> Preferences ,里面是集成环境配置。Port是环境的端口配置,Web-Server->Document Root下面是个路径,Web-Server会在选中的文件夹搭建服务,所以PHP代码需要保存在这个被选中的文件夹里面。
2、PHP环境有了,了解一下什么是PHP:
https://www.php.net/manual/zh/intro-whatis.php
PHP(“PHP: Hypertext Preprocessor”,超文本预处理器的字母缩写)是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中。
和客户端的 JavaScript 不同的是,PHP 代码是运行在服务端的。
官网给了个例子:
<html> <head> <title>Example</title> </head> <body> <?php echo "Hi, I'm a PHP script!"; ?> </body> </html>
我创建了一个.php文件,代码粘进去了,访问了一下地址。嗯,成功了。
3、PHP能做点儿什么
PHP 主要是用于服务端的脚本程序,因此可以用 PHP 来完成其它的 CGI (Common Gateway Interface) 程序能够完成的工作,例如收集表单数据,生成动态网页,或者发送/接收 Cookies。
PHP脚本主要用于的三个领域:
服务端脚本:
PHP 最传统,也是最主要的目标领域。开展这项工作需要具备以下三点:PHP 解析器(CGI 或者服务器模块)、web 服务器和 web 浏览器。需要在运行 web 服务器时,安装并配置 PHP,然后,可以用 web 浏览器来访问 PHP 程序的输出,即浏览服务端的 PHP 页面。
命令行脚本:
可以编写一段 PHP 脚本,并且不需要任何服务器或者浏览器来运行它。通过这种方式,仅仅只需要 PHP 解析器来执行。这种用法对于依赖 cron(Unix 或者 Linux 环境)或者 Task Scheduler(Windows 环境)的日常运行的脚本来说是理想的选择。
编写桌面程序:
对于有着图形界面的桌面应用程序来说,PHP 或许不是一种最好的语言,但是如果用户非常精通 PHP,并且希望在客户端应用程序中使用 PHP 的一些高级特性,可以利用 PHP-GTK 来编写这些程序。
PHP 最强大最显著的特性之一,是它支持很大范围的数据库。使用任何针对某数据库的扩展(例如 mysql)编写数据库支持的网页非常简单,或者使用抽象层如 PDO,或者通过 ODBC 扩展连接到任何支持 ODBC 标准的数据库。其它一些数据库也可能会用 cURL 或者 sockets,例如 CouchDB。
4、PHP类型
PHP 支持 9 种原始数据类型。
四种表量类型:
boolean、integer、float、string
三种复合类型:
array、object、callable
两种特殊类型:
resource、NULL
array :
<?php $array = array( "foo" => "bar", "bar" => "foo", 100 => -100, -100 => 100, ); var_dump($array); ?>
5、PHP 部分语法
* var_dump() 函数用于输出变量的相关信息。var_dump() 函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。
* echo 和 print 之间的差异:
echo - 能够输出一个以上的字符串
print - 只能输出一个字符串,并始终返回 1
提示:echo 比 print 稍快,因为它不返回任何值。
* $t = date("Y-m-d H:i:s") //2019-04-24 07:39:02
6、字符串函数
* strlen() : 函数返回字符串的长度,以字符计。
<?php $a = "asddddeewss"; echo strlen($a); ?>
* str_word_count() : 函数对字符串中的单词进行计数
<?php $a = "Hello My name is haha"; echo str_word_count($a); ?>
* strrev() : 函数反转字符串
<?php $a = "Hello My name is haha"; echo strrev($a); ?>
* strpos() : 函数用于检索字符串内指定的字符或文本。
<?php $a = "Hello My name is haha"; echo strpos($a,"name"); ?>
* str_replace() : 函数用一些字符串替换字符串中的另一些字符
<?php echo str_replace("world", "Kitty", "Hello world!"); // 输出 Hello Kitty! ?>
7、运算符
<?php $x=17; $y=8; echo ($x + $y); // 输出 25 echo ($x - $y); // 输出 9 echo ($x * $y); // 输出 136 echo ($x / $y); // 输出 2.125 echo ($x % $y); // 输出 1 ?>
8、条件语句
<?php $t=date("H"); if ($t<"10") { echo "Have a good morning!"; } elseif ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
9、Switch语句
<?php $favfruit="apple"; switch ($favfruit) { case "apple": echo "Your favorite fruit is apple!"; break; case "banana": echo "Your favorite fruit is banana!"; break; case "orange": echo "Your favorite fruit is orange!"; break; default: echo "Your favorite fruit is neither apple, banana, or orange!"; } ?>
10、for循环
* for 循环
<?php for ($x=0; $x<=10; $x++) { echo "数字是:$x <br>"; } ?>
* foreach循环
value 结构 array 的循环遍历:
<?php $colors = array(8,7,6,5,4,3,2); foreach ($colors as $value) { echo "$value <br/>"; } ?>
$key => $value 结构 array 的遍历:
<?php $arr = array( "foo" => "bar", "bar" => "foo", 100 => -100, "asd" => array( "a" => 12, "b" => 23 ) ); foreach ($arr as $key => $value) { echo "$key: $value <br/>"; } ?>
11、PHP函数
用户定义的函数声明以单词 function 开头:
function functionName() { 被执行的代码; }
<?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); ?>
12、数组中的排序函数
- sort() - 以升序对数组排序
- rsort() - 以降序对数组排序
- asort() - 根据值,以升序对关联数组进行排序
- ksort() - 根据键,以升序对关联数组进行排序
- arsort() - 根据值,以降序对关联数组进行排序
- krsort() - 根据键,以降序对关联数组进行排序