博客列表 >PHP: 安装与配置、php入门知识、变量相关知识

PHP: 安装与配置、php入门知识、变量相关知识

ALWAYS
ALWAYS原创
2020年04月16日 13:52:38787浏览

phpstudy 安装与配置

1. phpstudy 是什么

  • phpstudy 是 php 集成运行环境工具包,内置了 php 开发的常用软件和工具
  • phpstudy 省去了用户用手工逐一配置 PHP 程序运行环境的烦恼

2. phpstudy 内置了哪些软件

序号 工具 描述
1 web 服务器 Apache + Nginx
2 php 程序 php5.3 - 7.3
3 mysql 管理工具 phpmyadmin

3. phpstudy 下载地址


4. phpstudy 常用配置有哪些

  • 为了方便教学,我们配置一个本地主机:php.edu,模拟线上生产环境
  • 更多 phpstudy 配置技术, 可以到官网查阅文档
  • 也可以观看相关视频教程:https://www.php.cn/course/1066.html

5. 如何测试

  • 在默认 web 目录下创建一个: index.php程序,写入 <?php phpinfo();
  • 在默认浏览器中访问: php.edu,看到欢迎信息即安装并配置成功

    php 程序

1. php 是什么

  • PHP: (PHP: Hypertext Preprocessor), 超文本预处理器的缩写
  • PHP 是开源的,免费的,运行在服务端的,用来动态生成网页数据的脚本语言
  • 所谓脚本语言,是指不需要编译,直接由解释器/虚拟机执行的编程语言

2. php 程序执行流程

  • php 程序是用 php 指令编写并由 php 解析器执行的代码
  • php 程序必须使用.php做为扩展名
  • php 程序可以使用标签方式嵌入到 html 文档中

执行流程哪下:

  1. 客户端请求服务器端的 php 程序
  2. 服务器端将 php 程序转发给 php 解释器执行
  3. php 解释器执行完毕将生成的 html 或其它内容返回到服务器
  4. 服务器将最终生成的 html 代码做为响应内容返回客户端

示例代码

  1. function sum(int $a,int $b) : string
  2. {
  3. return "$a + $b = " . ($a +$b);
  4. }
  5. echo sum(10 ,90);

3. php 集成运行环境

初学者推荐使用集成环境,省去手工逐一安装配置麻烦

序号 集成环境 操作系统 描述
1 phpStudy Windows / Linux 中文,免费,功能全, 推荐
2 MAMP MacOS 英文,收费, 功能全, 推荐

4. php 程序文档

序号 组成 描述
1 <?php ... ?> PHP 代码标记
2 ; 分号 语句分隔符,代码块使用右大括号
3 空白符 合理使用空白符可增强代码可读性
4 注释 // 单行注释, /* 多行注释 */

php 标记之外的内容会原样返回客户端,如 html 代码


5. 打印结果

序号 指令 描述
1 echo 语言结构, 可查看多个变量
2 print 语言结构,功能与echo类似,区别是有返回值
3 print_r() 函数,以更容易理解的格式打印变量信息,常用于数组
4 var_dump() 函数,可查看一个变量更多信息,如类型
5 var_export() 函数,输出或返回一个变量的字符串表示(源代码)

实际工作中, echovar_dump()基本可以满足大多数需求

6、变量命名

  • 变量名区分大小写,但是函数不区分;
  • 正确的变量必须使用\$作为起始符号;
  • 变量名不允许使用数字开始;
  • 正确写法 变量名:\$ + php 标识符
  • 必须由以下三种字符组成:大小写的英文字母,下划线,数字,且不能以数字开始
  1. // 变量命名
  2. $username='susan';
  3. echo $username ,'<br>';
  4. $a1='susan1';
  5. echo $a1,'<br>';

7.php 变量是弱类型

php 没有变量声明的概念,它的类型由赋予他的值决定

  1. // php
  2. $var=1234567;
  3. var_dump($var);
  4. echo '<br>';
  5. $var='php';
  6. var_dump($var);

8 .变量的传递方式

  • 值传递和引用传递
  • 引用赋值,&:取地址符,引用符
  • 相当于给原变量起了一个别名
  1. <?php
  2. // 值传递
  3. $var=1234567;
  4. //将$var的值给一个新变量
  5. $var_new=$var;
  6. echo $var,'<br>';
  7. //变更
  8. $var='jack';
  9. echo $var;
  10. echo '<hr>';
  11. //引用传递
  12. // 引用赋值, &: 取地址符, 引用符
  13. $var2=&$var;
  14. echo $var2;
  15. //第二次更新,会将两个变量同时更新
  16. $var="第二次更新";
  17. echo $var ,'------' ,$var2;

9 . 可变变量

  • 可变变量:变量的标识符可以动态的改变
  • 数据表查询的时候需要动态的改变变量名,比如说图片处理,http 处理等等

    ```html
    // 可变变量

$var=’email’;

// $email=’xingmuz@163.com’;

$$var=”xingmuz@163.com”;

echo $var,’——-‘,’<br>‘,$$var,’——‘,$email;

  1. ## 10 .检测和删除一个变量
  2. - 检测:isset()
  3. - 删除:unset()
  4. - 如果变量已经定义但是未赋值(初始化),默认用 NULL 进行赋值
  5. - 初始化:第一次赋值
  6. - 更新/修改:第二次赋值;
  7. - is_null()判断是否为空
  8. - empty()判断是否为空格
  9. ![](https://img.php.cn/upload/image/846/779/418/1587014788801543.png)
  10. ```php
  11. //变量的检测和删除
  12. $var='123';
  13. if(isset($var)) echo $var;
  14. echo '<hr>';
  15. unset($var);
  16. if(isset($var))
  17. {
  18. echo $var,'<br>';
  19. }else
  20. {
  21. echo '变量不存在';
  22. };

11. 数据类型

  • 基本类型:字符串(string),数值(整数,小数),布尔:true/false
  • 复合类型:基础类型整合在一起
  • 特殊类型
  • 资源类型,文件
  1. //字符串
  2. $string='string';
  3. //数值型
  4. $int=100;
  5. //布尔
  6. $isnull=true;
  7. echo(gettype($isnull)),'<br>';
  8. // 复合类型
  9. $obj = new stdClass;
  10. $obj->email='123@qq.com';
  11. echo $obj->email.'<br>';
  12. //数组类型
  13. $array=['电脑','800'];
  14. echo print_r($array,true);
  15. echo '<pre>'.print_r($array,true).'</pre>';
  16. // 3. 特殊类型
  17. //$num = null;
  18. //var_dump($num);
  19. // 资源类型, 文件
  20. //$f = fopen('demo7.php','r');
  21. var_dump($f);
  22. echo gettype($f),'<hr>';
  23. if (gettype($f) === 'resource') {echo 'demo7.php是一个文件';}

总结:
1.phpstudy设置后,设置了端口为8080,所以在域名访问的时候需要增加域名,否则不能访问出来,还是要多设置多尝试。
2.变量是个重点,变量命名区分大小写,但是函数不区分,变量名不能使用数字开头,不能使用特殊符号,可以包含大小写英文字母,下划线,数字(数字不开头)。
2.php变量是弱类型,根据值的类型确定。
3.通过运行发现,不同类型的变量,打印方式不同。echo没有返回值,print有返回值,var_dump可以显示变量类型和长度并显示变量内容,print_r可以显示数组的结构。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议