PHP 脚本在服务器上执行,是将程序嵌入到html文档中,然后将纯 HTML 结果发送回浏览器,执行效率高。
了解
~~ PHP 脚本可以放在文档中的任何位置。
~~PHP 脚本以 <?php 开始,以 ?> 结束:
<?php php代码 ?>
~~PHP 文件的默认文件扩展名是 ".php"。
~~PHP 文件通常包含 HTML 标签和一些 PHP 脚本代码。
~~与用其他用如c写得脚本区别
c:用大量命令编写程序来输出HTML;
PHP页面就是HTML文档,只是在其中插入了一些代码来做一些事情
~~ PHP 代码被包含在特殊的起始符和结束符 <?php 和 ?> 中,使得可以进出“PHP 模式”。
~~ 弱类型:PHP 会根据变量的值,自动把变量转换为正确的数据类型。
作用
PHP 主要是用于服务端的脚本程序,因此可以用 PHP 来完成任何其它的 CGI 程序能够完成的工作,例如收集表单数据,生成动态网页,或者发送/接收 Cookies,连接,操作数据库。
变量
~~变量以 $ 符号开始,后面跟着变量的名称 (PHP语句和变量区分大小写)
~~变量在赋值时被创建
作用域
global:在函数外被创建,作用域直到文件结尾,函数内部若要调用,在变量名前加global(global $x)或使用$GLOBALS[index]数组
local:函数内定义创建,只作用于函数内
static:当希望某个变量在函数运行完后不被释放,在变量名前加static
参数:函数传参
输出
echo: 可以输出一个或多个字符串
print: 只允许输出一个字符串,返回值总为 1
类型
使用var_dump() 函数返回变量的数据类型和值:
字符串:将值放在单引号或双引号之间
整型: 可以用三种格式来指定---->十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)。
浮点型
布尔型
数组
对象:先使用class关键字声明类对象,然后在类中定义数据类型
<?php class Car { var $color; function __construct($color="green") { $this->color = $color; } function what_color() { return $this->color; } } ?>
类型比较
- 松散比较:使用两个等号 == 比较,只比较值,不比较类型。
- 严格比较:用三个等号 === 比较,除了比较值,也比较类型。
常量-->宏定义
使用 define() 函数定义常量
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
- name:必选参数,常量名称,即标志符。
- value:必选参数,常量的值。
- case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。
字符串
并置运算符:.
将两个字符串值连接起来
<?php $txt1="Hello world!"; $txt2="What a nice day!"; echo $txt1 . " " . $txt2; ?>
strlen()
返回字符串长度(字节数)
strpos() 函数
在字符串内查找一个字符或一段指定的文本。如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE
<?php echo strpos("Hello world!","world");//输出6,字符串从0开始 ?>
注意:
字符串为中文时
<?php echo strlen("中文字符"); // 输出 12,中文下的字符在 UTF-8 下是 3 个字符长度,在 gbk 下是2个字符长度。 echo strpos('开始23测试ceshi', '测试') . PHP_EOL;//输出8 echo mb_strpos('开始23测试ceshi', '测试') . PHP_EOL;//输出4 //mb_strpos 按字处理,strpos 按字符处理 ?>
运算符
其他运算符和c一致
取反:在变量前加“-”
数组
创建
array();创建
类型
数值数组
与c数组一致
关联数组
使用你分配给数组的指定的键的数组 (将键当成数字即可)
创建:
<?php $age=array("Peter"=>"35","Joe"=>"18","Sam"=>"15"); //or $age['Peter']="35"; $age['Ben']="37"; $age['Joe']="43"; //输出: echo "Peter is" .$age['Peter']."years old." ?>
遍历
foreach
<?php $age=array("Peter"=>"35","Joe"=>"18","Sam"=>"15"); foreach($age as $x=>$x_value) { echo "key=".$x.",value=".$x_value; echo "<br>"; ?>
多维数组
和c多维数组概念大差不差,都是数组中的元素被当做数组
创建
<?php $sites = array ( "runoob"=>array ( "菜鸟教程", "http://www.runoob.com" ), "google"=>array ( "Google 搜索", "http://www.google.com" ), "taobao"=>array ( "淘宝", "http://www.taobao.com" ) ); print("<pre>"); // 格式化输出数组 print_r($sites); print("</pre>"); ?>
排序
加“r”的为降序排列
foreach
此 循环用于遍历数组。
foreach ($array as $value) { 要执行代码; } 比如: <?php $x=array("Google","Runoob","Taobao"); foreach ($x as $value) { echo $value . PHP_EOL; } ?>
PHP表单和用户输入
当处理 HTML 表单时,PHP 能把来自 HTML 页面中的表单元素自动变成可供 PHP 脚本使用。
PHP 中的 $_GET 和 $_POST 变量用于检索表单中的信息,比如用户输入。
$_GET 变量
预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。