PHP基本语法

php使用一对特殊的标记包含php代码,与HTML代码混在一起。当服务器解析页面时,能够自动过滤出PHP脚本并进行解释,最后把生成的静态网页传递给客户端。

1.PHP标记

一般情况下,PHP代码都被嵌入到HTMl文档中,PHP代码在HTML中嵌入时有以下几种方式:

  1. 默认标记
    默认标记是通过 “<?php" 和 "?>” 标记进行将HTML和PHP代码进行分隔。例如:
<?php
#这里写PHP代码哟
?>

实例】使用这种默认标记,可以在HTML文档中随意混合PHP和HTML代码,例如:

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<?php if ($test) { ?>
<div> $test变量为true.</div>
<?php } else { ?>
<div> $test变量为false.</div>
<?php } ?>
</body>
</html>

输出结果为: php$test变量为 false.

注意】使用上面实例方法输出大段HTML字符串时,使用更方便比起使用echo()print()更方便更快。

  1. 脚本标记
    脚本标记是采用script中的language属性设置脚本语言为PHP进行使用的。例如:
<script language="php">
#这里写PHP代码哟!
</script>
  1. 简写标记
    简写标记相比较于默认标记的方式去掉了php关键字,方便大家书写。例如:
<?
#这里写php代码哟!
?>
  1. ASP标记
    ASP标记是以类似于JAVA的方式进行书写的,通过<%%>一对标记分割PHP代码。例如:
<%
#这里写代码哟!
%>

注意】使用这种ASP标记这种进行书写PHP代码的话,需要修改PHP配置文件php.ini文件,需要将short_open_tagasp_tags这两个参数设置为On,考虑到这两种方式的移植性比较差,不建议使用这种方式。修改如下:

short_open_tag = On
asp_tags = On

2. PHP注释

一门编程语言肯定少不了写注释的,我们来看看PHP有哪些注释吧

  1. C++语言风格的单行注释
    例如:
<?php
//这里是我写的注释呦!
?>

实例】这种单行注释方式是经常使用的,也是比较常见的注释方式

<?php
echo 123; //输出123
?>

输出结果为:123不会显示我注释的内容。
2. Shell脚本语言风格的注释
例如:

<?php
/*
这里
是多
行注
释呦!
*/
?>

实例】多行注释主要用于代码的开始简要说明时使用

<?php
/*
下面代码用来乘法计算
*/
$a = 10;
$b = 20;
$c = $a * $b;
echo $c;
?>

输出结果为:200
注意】多行注释中不要写入代码去呦,不然的话是不生效无法基线解释的呦!!!
实例】这里将PHP代码写到多行注释种,看看会怎么样

<?php
/*
下面代码用来乘法计算
$d = 200;
*/
$a = 10;
$b = 20;
$c = $a * $b * $d;
echo $c;
?>

输出结果为:0 这里因为把变量d写到了注释里面,PHP不会解释注释里面的代码
3. C语言风格的多行注释
例如:

<?php
#这里是我写的注释呦!
?>

实例】单行注释

<?php
$a = 10; #这是a变量
$b = 20; #这是b变量
$c = $a * $b; #这是c变量
echo $c; #这是输出c变量
?>

输出结果为:200
注意】单行注释的时候不要写?>呦,不让后面的代码不会生效,会出现报错的呦!!!
实例】当单行注释加入?>会发生什么呢

<?php
$a = 10; #这是a变量
$b = 20; #这是b?>变量
$c = $a * $b; #这是c变量
echo $c; #这是输出c变量
?>

输出结果为:
当单行注释种加入?>结尾符时,PHP会停止解释后面的代码,后面代码就会以HTML的形式进行展现

3. PHP指令分隔符

与C、Perl等语言一样都有着同样一个分隔符;,放在需要分隔的语句后面,当一段PHP代码中包含了结尾符?>则可以省略分隔符;,所以在PHP代码中最后一段代码可以省略分隔符,因为?>结尾符中包含了一个分隔符。
实例】正常使用分隔符

<?php
echo "第一行代码";
echo "第二行代码";
?>

输出结果为:

实例】最后一段代码省略分隔符

<?php
echo "第一行代码";
echo "第二行代码";
echo "最后一行代码"
?>

输出结果为:

自学PHP笔记(一)PHP语法的更多相关文章

  1. 自学PHP笔记(五) PHP运算符

    本文转发来自:自学PHP笔记(五) PHP运算符 首先我们需要了解运算符是什么,运算符是指的对变量.常量或者数据进行计算的一个符号,比如数学中学到的加减乘除等用来运算的代表符号,PHP中的运算符也是这 ...

  2. python笔记之中缀语法和管道实现

    python笔记之中缀语法和管道实现 你知道什么是中缀语法吗?你知道python中的中缀操作是什么吗?那你知道操作python也是可以像unix的管道符一样方便吗?那么,废话不说了,直接上代码. cl ...

  3. 自学Python1.6-Centos内英文语法切换

    自学Python之路 自学Python1.6-Centos内中英文语法切换 测试采用是官方Centos7.0系统 1.添加中文输入法 打开设置---区域和语言--->在输入源最下面有一个 + 号 ...

  4. django2笔记:路由path语法

    django2笔记:路由path语法 9月23,Django 发布了2.0a1版本,这是一个 feature freeze 版本,如果没有什么意外的话,2.0正式版不会再增加新的功能了.按照以往的规律 ...

  5. python3.4学习笔记(一) 基本语法 python3不向下兼容,有些语法跟python2.x不一样

    python3.4学习笔记(一) 基本语法 python3不向下兼容,有些语法跟python2.x不一样,IDLE shell编辑器,快捷键:ALT+p,上一个历史输入内容,ALT+n 下一个历史输入 ...

  6. Python:笔记(1)——基础语法

    Python:笔记(1)——基础语法 我很抱歉有半年没有在博客园写过笔记了,客观因素有一些,但主观原因居多,再多的谴责和批判也都于事无补,我们能做的就是重振旗鼓,继续出发! ——写在Python之前 ...

  7. C#快速入门笔记(1)——基础语法

    C#快速入门笔记(1)——基础语法 总体框架:

  8. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  9. 基于.net的分布式系统限流组件 C# DataGridView绑定List对象时,利用BindingList来实现增删查改 .net中ThreadPool与Task的认识总结 C# 排序技术研究与对比 基于.net的通用内存缓存模型组件 Scala学习笔记:重要语法特性

    基于.net的分布式系统限流组件   在互联网应用中,流量洪峰是常有的事情.在应对流量洪峰时,通用的处理模式一般有排队.限流,这样可以非常直接有效的保护系统,防止系统被打爆.另外,通过限流技术手段,可 ...

  10. Java学习笔记之---基础语法

    Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...

随机推荐

  1. Mybatis-Plus系统化学习之注解的使用

    1.背景 注解的使用 大多数请求下我们默认为有如下对应关系 1.数据库中的表名 ---> java中的实体类名 (下划线与驼峰转换) 2.数据中的id为主键 3.数据库中的字段名---> ...

  2. MySQL 优化慢查询

    查询以SELECT 语句的形式执行数据库中的所有查找操作.调整这些语句是重中之重,无论是实现动态网页的亚秒响应时间,还是缩短数小时生成大量夜间报告的时间. 此外SELECT语句,进行查询调谐技术也适用 ...

  3. 新版的Django Docker部署方案,多阶段构建、自动处理前端依赖

    前言 前几天的文章中,我们已经把使用 pdm 的项目用 docker 搞定了,那么下一步就是把完整的 DjangoStarter v3 版本用 docker 部署. 现在不像之前那么简单直接一把梭了, ...

  4. SMU 2024 spring 天梯赛自主训练2

    SMU 2024 spring 天梯赛自主训练2 7-1 I Love GPLT - SMU 2024 spring 天梯赛自主训练2 (pintia.cn) PHP 点击查看代码 I L o v e ...

  5. async await 状态机理解

    public async Task<string> Wait3S() { await Task.Delay(3000); Console.WriteLine("Wait 3 S& ...

  6. BST 二叉搜索树 BinarySearchTree C++实现(递归/非递归)

    目录 二叉搜索树 基本概念 常用结论 用途 二叉搜索树的性能分析 二叉搜索树的操作 查找 插入 删除 代码实现 BSTree.hpp test.cc 二叉搜索树 基本概念 二叉搜索树(BST,Bina ...

  7. 前后端分离使用mp遇到问题

    <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-s ...

  8. attention, transformers

    这啥呀,慢慢啃 Attention 最初来源于 NLP 机器翻译的 Sequence to Sequence 模型,早先的encoder-decoder结构随着句子长度增加翻译性能会下降,因为模型记不 ...

  9. Redis过期策略以及Redis的内存淘汰机制

    此篇介绍了Redis过期策略以及Redis的内存淘汰机制,从内存淘汰的8种策略,如何开启内存淘汰策略到如何选择合适的淘汰策略,对Redis的内存淘汰机制做了全方位的阐述 如何高效的使用内存对于redi ...

  10. ASP.NET Core – Data Protection & Azure Storage + Azure Key Vault

    前言 以前就写过很多篇了 Asp.net core 学习笔记 ( Data protection ) Asp.net core 学习笔记 Secret 和 Data Protect Azure key ...