博客列表 >2020年01月03日 php基础、变量定义及输出

2020年01月03日 php基础、变量定义及输出

晓刚
晓刚原创
2020年01月04日 15:44:57656浏览

php基础

一、首先来个初体验

  1. <?php
  2. echo '终于学习php了,很高兴'
  3. ?>

运行效果
php编程语言写在<?php ?>里面,在某些情况下?>可以不用写


二、 php变量

变量可以理解为是存储信息的“容器”

php变量的规则

  1. 变量必须以$开始,后面才跟着变量的名称
  2. 变量名必须以字母或者下划线字符开始,不能以数字开头(例如$1 是错误的)
  3. 变量名只能包含字母数字字符以及下划线
  4. 变量名不能有空格
  5. 变量名区分大小写($a $A 是不同的两个变量)

php变量无需声明

  1. php变量,使用前不用声明;php没有变量声明语句
  2. 变量声明,简单的可以理解为:向内存申请一块空间,用来存储数据,变量名就是内存地址编号
  3. 第一次要初始化,也可称之为赋值,第二次叫更新/修改,也可称之为重新赋值

举例说明

  1. <?php
  2. $site='php.cn';
  3. ?>


不好演示画了个图表示下


三、 数据与代码在程序中如何体现

  1. <?php
  2. //数据:变量表示,放在数据段
  3. $site='php.cn';
  4. //代码:函数表示,放在代码段
  5. function get_site($webSite)
  6. {
  7. return $webSite.'欢迎您';
  8. }
  9. //调用函数,指令就是一条一条的进入到cpu中
  10. echo get_site($site);
  11. // 两个//是php中的单行注释
  12. /*
  13. * 这样的是php中的多行注释
  14. */


四、 为什么数据有类型

1.操作的要求:只有明确了数据类型,才能允许操作
例如:数组允许进行算术运算,字符串不能进行算术运算。打比方说就是一台设备的按钮只画了个符号,不告诉用户是按的还是转的,用户就不知道怎么操作的了
2.存储要求:只有声明了数据类型,才能正确的分配内存空间来保存
例如:数值、字符串、布尔值、它们占用的空间肯定是不一样的

数据类型分类:


五、 基本类型的特点与操作

基本类型:数值,字符串,布尔值(true,false),浮点型
字符串必须用定界符进行包装:单引号/双引号
单引号:纯字符中
双引号:除了纯字符中之外,还能解析变量和特殊字符

->数值范围
数值:计算机的字长相关,32位与64位不相同
字符串:与字符编码集相关,gbk/utf8/utfmb4
布尔值: true / false

->存储方式
栈:定长存储单元 ,(整数4-8字节,字符串的入口地址放进去)
堆:不定长的存储单元,(数组,对象,字符串本身)

->类型说明
一个变量名对应一个值:单值类型
例: $name=’li’; $gender=’male’;
一个变量名对应多个值:多值类型
例:多值类型/复合类型:数组、对象


六、 php输出操作

  1. <?php
  2. $name='xiao gang';
  3. $age=29;
  4. /*
  5. * .是php中的拼接,跟js中+类似
  6. * . 的拼接可以使用 , 省去了字符串的拼接和解析的过程,效果要比.高些
  7. * echo可以输出一个或多个字符串
  8. * echo 输出是没有返回值的
  9. *
  10. */
  11. echo '年龄:'.$age.'<br>';
  12. echo $name.'的年龄:'.$age.'<br>';
  13. echo $name,'的年龄:',$age,'<br>';
  14. /*
  15. * 取出变量$name里面的x 用一下方式
  16. * 因为不是数组,推荐的方式是{},免得误会
  17. */
  18. echo '姓名的一个字母'.$name[0].'<br>';
  19. echo '姓名的一个字母'.$name{0}.'<br>';
  20. /*
  21. * print是有返回值的,成功会返回输出1
  22. */
  23. echo print('年龄:'.$age.'<br>');
  24. echo '<br>';
  25. //第二个参数true不是输出,而是返回,类似与return
  26. echo print_r($name,true);
  27. echo '<hr>';
  28. //复合类型 数组
  29. $data=range(1,20,2);
  30. //数组 转成了字符串
  31. $result=print_r($data,true);
  32. // gettype返回当前的数据类型
  33. echo gettype($result);
  34. // pre可以格式化输出
  35. echo '<pre>'.$result.'</pre>';
  36. echo '<hr>';
  37. //可以生成变量的php源代码的字符串表示
  38. echo var_export($name);
  39. echo '<br>';
  40. echo var_export($data,true);
  41. echo '<br>';
  42. //可以完成的输出类型和值
  43. var_dump($data);

输出结果:


七、 单双引号及大段字符串的输出

  1. <?php
  2. $name='xiao gang';
  3. $age=29;
  4. //如果输出的是纯字符串,没有变量的话,建议使用单引号,效率要比双引号快
  5. //单引号不会解析变量
  6. echo '我是:$name <br>';
  7. //双引号可以正常解析
  8. echo "我是:$name <br>";
  9. echo "我是:${name}哈哈 <br>";
  10. echo "我是:{$name}哈哈 <br>";//建议使用这种方式
  11. //双引号可以解析特殊字符
  12. echo "This\t'is' a\t demo<br>";
  13. //如果想要输出双引号,需要进行转义,方式如下
  14. echo "This\t'is' a\t \"demo\"<br>";
  15. //大段字符串的输出 heredoc:类似双引号定义的字符串
  16. //第一种:简洁 第二种直观
  17. echo <<< HELLO
  18. <h3 style="color: red">"php中文网"{$name}</h3>
  19. HELLO;
  20. echo <<< "HELLO"
  21. <h3 style="color: aquamarine">"php中文网"{$name}</h3>
  22. HELLO;
  23. echo '<br>';
  24. //nowdoc:功能与单引号创建的字符串类似,不解析变量及特殊字符
  25. echo <<< 'NOWDOC'
  26. <h3 style="color: aqua">"php中文网"{$name}'单引号'</h3>
  27. NOWDOC;

HELLO NOWDOC 名字可以随便设置,只要是合法的,注意的是《nowdoc》单引号是不能省略的
运行结果:


以上有自己的想法在里面,有错误之处,请老师指出下,不要误导了读者;
php我有些经验,重新在学一遍,感觉就是不一样,又能补上自己没有学习到的知识,会的知识在做些巩固,初学着可能觉得不明白,很正常的,我初学的时候,懵圈了相当久的一段时间,课程都要结束了才明白,可能就是差那点意思,理解明白了就会恍然大悟的感觉,学另一个编程语言就会很容易的接受了,思想都是相通的!

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