目录
php基础学习笔记(12),php基础学习笔记12
php基本语法
变量和常量
数据类型:
3种字符串类型的区别:
传值方式:
运算符:
数据类型转换
首页 php教程 php手册 php基础学习笔记(12),php基础学习笔记12

php基础学习笔记(12),php基础学习笔记12

Jun 13, 2016 am 09:09 AM
php

php基础学习笔记(12),php基础学习笔记12

php基本语法

<?<span>php
    </span><span>//</span><span>这个是php单行注释</span>
    <span>/*</span><span>
        这是多行注释
    </span><span>*/</span>
    <span>//</span><span>每条php语句使用英文分号结束&mdash;&mdash;必须使用!
    </span><span>//</span><span>php是一门区分大小写的语言&mdash;&mdash;但函数名除外
    </span><span>//</span><span>php的任何一个变量名都要使用一个$符开头。</span>
?>
登录后复制

变量和常量

php中,变量使用一个$符号开头。变量通常是直接赋值(此时如果是第一次赋值也就表示定义)。

常量:设定一个其值不会也不应该改变的数据标识符(数据名字),比如数学上的“pi”。

$pi = 3.14; //这是变量

define(“PI”, 3.14); //这是定义一个常量,名字为“PI”,值为3.14,这里也就类似赋值

常量定义的同时也就是赋值,且只是这一次性的!

常量和变量的区别:

  • 常量前面没有美元符号($)
  • 常量只能用 define() 函数定义,而不能通过赋值语句赋值
  • 常量可以不用理会变量范围的规则而在任何地方定义和访问
  • 常量一旦定义就不能被重新定义或者取消定义
  • 常量的值只能是标量(即整数,浮点数,字符串,布尔)

数据类型:

基本类型(标量类型):

布尔类型(bool,boolean): 只有两个数据:true false

字符类型(string):可以是单引号,也可以是双引号,还可以是“定界符”格式

整数类型(int,integer):

$v1 = 10;

$v2 = 012; //以0开始的数字表示“8进制”整数,这里相当于10进制的10

$v3 = 0x1F; //以0x开始的数字表示16进制整数,这里相当于10进制的31

浮点类型(float,double)

$v4 = 12.34;

$v5 = 12.34e5; //12.34乘以10的5次方

复合类型:

数组类型:

对象类型:

特殊类型:

资源类型:表示某种“外界数据”的类型。

空类型(null):只有一个数据,就是“null”

3种字符串类型的区别:

$str1 = <span>"</span><span>abc\ndefg1</span><span>"</span>;    <span>//</span><span>双引号字符串中可以识别以下转义字符:\"  \n  \r  \t  \\  \$</span>
$str2 = <span>'</span><span>a\bc\ndefg2\\</span><span>'</span>;        <span>//</span><span>单引号字符串中只能识别以下转义字符:\'  \\。其中"\\"通常只用于最后一个字符
</span><span>//</span><span>下述为定界符字符串,其中的&ldquo;ABCD&rdquo;是随意命名的一个符号。字符串也就使用该符号结尾。
</span><span>//</span><span>定界符字符串中可以识别以下转义字符:\n  \r  \t  \\  \$</span>
$str3 = <<<<span>ABCD
abc\nde</span><span>"</span><span>f'g3</span>
<span>这叫做定界符字符串
这个范围的任何内容都是属于str3这个字符串的内容
换行也可以直接换
还可以写html和js等等。。。比如:
</span><hr />
<script><span>
    alert(</span><span>"</span><span>dddd</span><span>"</span><span>);
</span></script><span>
ABCD;
</span><span>//</span><span>特别注意:上述一行定界符字符串的结束符只能出现该名字本身和一个分号,不能有任何其他内容,比如空格,缩进(tab符)

</span><span>//</span><span>注意:在双引号字符串和定界符字符串中,可以直接识别变量并用该该变量的值来填充其内容。
</span><span>//</span><span>如果想要不被识别,则需要使用"\$"来将该$符号进行转义</span>
    $i = <span>5</span><span>;
    echo </span><span>"</span><span>$i=</span><span>"</span> . $i ;
登录后复制

传值方式:

值传递(赋值传值):将一个变量的值拷贝一份,然后赋值给另一个变量,此时两个变量的值相等(相同),但两个变量是完全独立的没有关联的变量。

默认情况下,在php中,简单数据类型和数组以及空类型使用值传递。

引用传递(引用传值):将一个变量多代表的“地址”复制一份然后赋值给另一个变量,也就是相当于两个变量同时指向(对应)一个相同的地址——此地址也就代表数据的位置。此时两个变量值相等的同时,也表示这两个变量其实指代的是一份共同的数据。

默认情况下,在php中,对象类型以及资源类型使用引用传递。

不过:

我们也可以人为将默认使用赋值传递的数据来使用引用传值。语法是:

变量1 = &变量2;

举例:

$v1 = 10;

$v2 = &$v1; //$v1和$v2此时代表“一个数据内容”

$v1++;

echo $v2;

对比js:

js中,只有默认传值方式,没有人为设定方式

js中:默认值传递的类型有:数字,字符,布尔,两个特殊类型

默认引用传值的类型有:数组, 对象

运算符:

l 算术运算符: + - * / % ++ --

  • +号只做“算术运算”,没有双重含义。
  • ++ --符号含义和用法完全同js。

l 写在变量前,则:先自加(自减),再做其他运算(比如赋值)

l 写在变量后,则:先做其他运算(比如赋值),再自加(自减)

  • %号只对整数进行取与运算,如果不是整数,会先自动转为整数再取余

l 比较运算符:== != > >= < <= ===(全等于) !==(不全等于)

  • ==通常表示“模糊相等”,===表示精确相等(只有数据类型和数据值都一样才等)
  • 模糊相等的各种情况请查手册:附录〉类型比较表

l 条件运算符:(expr1) ? (expr2) : (expr3),例:

  • 含义:对表达式exp1进行求值判断,判断结果如果是true,则整个表达式的结果就是exp2,否则整个表达式的结果是exp3
  • $v1 = $fs>60 ? "及格" : "补考" ; //则v1根据fs的值有两个情况
  • 补充知识:一元运算符有:!, ++, --, ~,, 二元运算符就是我们用得最多的运算符,三元运算符就这一个。

l 逻辑运算符:&&(与) ||(或) ! (非)

  • 逻辑与&&: 只两个数据都是true的时候,结果才是true
  • 逻辑或||: 只要有一个数据是true的时候,结果就是true
  • 逻辑非!: 取逻辑数据的相反值。

l 字符串运算符:. (即英文句号) .=(即类似“+=”)

  • .=只是一个“简写法”而已,$v1 = $v1 . “abc”; è $v1 .= “abc”;

l 位运算符:&(与) |(或) ~(非) ^(异或) <<(左移) >>(右移)

  • 位运算符都是针对数字的二进制来进行的。
  • 按位与&:只有两个对应位上的数字都是1的时候结果才是1
  • 按位或|:只要有一个对应位上的数字是1,结果就是1
  • 按位非~:取反,即1变成0,0变成1
  • 按位异或^:两个对应位上的数字不同的时候结果就是1

l 赋值运算符: = += -= *= /= %= .=

运算符的优先级问题:基本同js。

数据类型转换

在js中,基本没有数据类型转换的概念,实际的转换都是“自动发生”的——默认转换。

js中有两个“类似”类型转换的函数: parseInt(….) parseFloat(…)

php中,既有默认转换,也有强制转换。

默认转换举例:

$v1 = <span>10</span> - &ldquo;<span>3</span>&rdquo;;        <span>//</span><span>7;</span>
    $v2 = <span>10</span> + &ldquo;<span>3</span>&rdquo;;        <span>//</span><span>13;</span>
    $v3 = <span>10</span> + &ldquo;3abc&rdquo;;    <span>//</span><span>13;</span>
    $v4 = <span>10</span> + &ldquo;<span>3</span>.5abc&rdquo;;    <span>//</span><span>13.5;</span>
    $v5 = <span>10</span> + &ldquo;abc3&rdquo;;    <span>//</span><span>10;</span>
    $v5 = <span>10</span> + &ldquo;abc&rdquo;;    <span>//</span><span>10</span>
    $v5 = &ldquo;<span>10</span>&rdquo; + &ldquo;abc&rdquo;;    <span>//</span><span>10</span>
    $v5 = &ldquo;10ABC&rdquo; + &ldquo;5abc&rdquo;;    <span>//</span><span>15</span>
    $v5 = &ldquo;ABC10&rdquo; + &ldquo;abc5&rdquo;;    <span>//</span><span>0</span>
    $v5 = &ldquo;ABC&rdquo; + &ldquo;abc&rdquo;;    <span>//</span><span>0</span>
登录后复制

………………….凡是使用算术运算符进行运算,都会“看成”数字,如果实在转不成一个数字,也会当做0来进行计算。

强制转换

<span>语法: (要转成的目标类型)数据;
    举例:
    $v1 </span>= (<span>int</span>) &ldquo;<span>3</span>.5abc&rdquo;;    <span>//</span><span>3;int类型</span>
    $v1 = (<span>float</span>) &ldquo;<span>3</span>.5abc&rdquo;;    <span>//</span><span>3.5;    </span><span>//</span><span>这里其实是float类型</span>
    $v1 = (<span>string</span>) <span>3</span>;        <span>//</span><span>&rdquo;3&rdquo;;</span>
    $v1 = (<span>bool</span>) &ldquo;<span>3.5</span>&rdquo;;        <span>//</span><span>true</span>
登录后复制

——特别推荐将一个数据转换为bool类型的时候:查手册:附录〉类型比较表〉对变量 $x 进行比较 〉 if($x)列

 

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1666
14
CakePHP 教程
1426
52
Laravel 教程
1328
25
PHP教程
1273
29
C# 教程
1253
24
PHP和Python:比较两种流行的编程语言 PHP和Python:比较两种流行的编程语言 Apr 14, 2025 am 12:13 AM

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP:网络开发的关键语言 PHP:网络开发的关键语言 Apr 13, 2025 am 12:08 AM

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP行动:现实世界中的示例和应用程序 PHP行动:现实世界中的示例和应用程序 Apr 14, 2025 am 12:19 AM

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP与Python:了解差异 PHP与Python:了解差异 Apr 11, 2025 am 12:15 AM

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP的持久相关性:它还活着吗? PHP的持久相关性:它还活着吗? Apr 14, 2025 am 12:12 AM

PHP仍然具有活力,其在现代编程领域中依然占据重要地位。1)PHP的简单易学和强大社区支持使其在Web开发中广泛应用;2)其灵活性和稳定性使其在处理Web表单、数据库操作和文件处理等方面表现出色;3)PHP不断进化和优化,适用于初学者和经验丰富的开发者。

PHP与其他语言:比较 PHP与其他语言:比较 Apr 13, 2025 am 12:19 AM

PHP适合web开发,特别是在快速开发和处理动态内容方面表现出色,但不擅长数据科学和企业级应用。与Python相比,PHP在web开发中更具优势,但在数据科学领域不如Python;与Java相比,PHP在企业级应用中表现较差,但在web开发中更灵活;与JavaScript相比,PHP在后端开发中更简洁,但在前端开发中不如JavaScript。

PHP和Python:代码示例和比较 PHP和Python:代码示例和比较 Apr 15, 2025 am 12:07 AM

PHP和Python各有优劣,选择取决于项目需求和个人偏好。1.PHP适合快速开发和维护大型Web应用。2.Python在数据科学和机器学习领域占据主导地位。

PHP和Python:解释了不同的范例 PHP和Python:解释了不同的范例 Apr 18, 2025 am 12:26 AM

PHP主要是过程式编程,但也支持面向对象编程(OOP);Python支持多种范式,包括OOP、函数式和过程式编程。PHP适合web开发,Python适用于多种应用,如数据分析和机器学习。

See all articles