03 Php学习:echo 、 print 、EOF

echo 和 print

在 PHP 中有两个基本的输出方式: echo 和 print。

echo 和 print 区别:

  • echo - 可以输出一个或多个字符串
  • print - 只允许输出一个字符串,返回值总为 1

注意:echo 输出的速度比 print 快, echo 没有返回值,print有返回值1。

echo 详解和举例

在PHP中,echo语句用于将一个或多个字符串输出到页面上。它是PHP中最常用的输出语句之一,通常用于将HTML代码、文本或变量的值输出到浏览器上。

语法:

php 复制代码
echo expression1, expression2, ...;
  • expression1, expression2等表示要输出的内容,可以是字符串、变量、或者表达式。
输出字符串:
php 复制代码
<?php
    echo "Hello, World!";
?>
输出变量的值:
php 复制代码
<?php
    $name = "Alice";
    echo "Hello, " . $name;
?>
结合HTML输出:
php 复制代码
<?php
    $color = "red";
    echo "<p style='color: $color;'>This is a red paragraph.</p>";
?>
结合HTML表单:
php 复制代码
<form action="submit.php" method="post">
    <input type="text" name="username">
    <input type="submit" value="Submit">
</form>

<?php
    echo "Welcome, " . $_POST['username'];
?>

注意事项:

  • 多个参数之间可以用逗号,分隔,echo会将它们依次输出,不会自动添加空格或换行符。
  • echo并不是一个函数,所以尽管你可以使用括号,但并非必须。
  • 在PHP中,print也可以用来输出字符串,它与echo类似,但是echo的执行速度稍快,因此更为常用。

print 详解和举例

在PHP中,printecho都是用来将输出内容显示在页面上的语句,它们之间有一些细微的差别。下面我会详细解释print语句的用法,并给出一些示例:

语法:

php 复制代码
print expression;
  • expression表示要输出的内容,可以是字符串、变量、或者表达式。

特点:

  • print总是返回1,所以它可以用在表达式中(比如赋值语句),而echo不能。
  • print会自动添加一个换行符(\n)。
输出字符串:
php 复制代码
<?php
    print "Hello, World!";
?>
输出变量的值:
php 复制代码
<?php
    $name = "Bob";
    print "Hello, $name";
?>
结合HTML输出:
php 复制代码
<?php
    $color = "blue";
    print "<p style='color: $color;'>This is a blue paragraph.</p>";
?>
结合HTML表单:
php 复制代码
<form action="submit.php" method="post">
    <input type="text" name="username">
    <input type="submit" value="Submit">
</form>

<?php
    print "Welcome, " . $_POST['username'];
?>

注意事项:

  • print语句自带一个换行符,所以如果不需要换行,可以通过echo来输出。
  • 虽然print在技术上是一个函数,但通常使用不带括号的方式调用。

EOF

EOF(heredoc)是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字符串的方法。

使用概述:

  1. 必须后接分号,否则编译通不过。
  2. EOF 可以用任意其它字符代替,只需保证结束标识与开始标识一致。
  3. 结束标识必须顶格独自占一行(即必须从行首开始,前后不能衔接任何空白和字符)。
  4. 开始标识可以不带引号或带单双引号,不带引号与带双引号效果一致,解释内嵌的变量和转义符号,带单引号则不解释内嵌的变量和转义符号。
  5. 当内容需要内嵌引号(单引号或双引号)时,不需要加转义符,本身对单双引号转义,此处相当与q和qq的用法。
python 复制代码
<?php
echo <<<EOF
        <h1>我的第一个标题</h1>
        <p>我的第一个段落。</p>
EOF;
// 结束需要独立一行且前后不能空格
?>

注意:

  1. 以 <<<EOF 开始标记开始,以 EOF 结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。

  2. 开始标记和结束标记相同,比如常用大写的 EOT、EOD、EOF 来表示,但是不只限于那几个(也可以用:JSON、HTML等),只要保证开始标记和结束标记不在正文中出现即可。

  3. 位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在 heredoc 中,变量不需要用连接符 . 或 , 来拼接,如下:

python 复制代码
<?php
$name="YAMAHA";
$a= <<<EOF
        "abc"$name
        "123"
EOF;
// 结束需要独立一行且前后不能空格
echo $a;
?>

关注我,不迷路,共学习,同进步

关注我,不迷路,共学习,同进步

相关推荐
liulilittle11 分钟前
无锁并发容器的设计与实现原理
开发语言·c++·set·map·并发·无锁·lock-free
还不秃顶的计科生18 分钟前
具身智能论文学习8:Octo: An Open-Source Generalist Robot Policy
人工智能·深度学习·学习·机器学习·语言模型·vla·vlm
朋克洛德的码农35 分钟前
Go并发-sync包四剑客:Mutex、RWMutex、WaitGroup、Once-从入门到原理
开发语言·后端·golang
woshihuanglaoshi43 分钟前
事务加持防超卖:ArkTS 在鸿蒙里玩转 TRANSACTION 出入库
学习·华为·harmonyos
世人万千丶1 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
淼澄研学2 小时前
Kimi API黑产倒卖技术解析与Python合规接入指南
开发语言·网络·python
冻柠檬飞冰走茶2 小时前
PTA基础编程题目集 7-35有理数均值(C++语言实现)
开发语言·数据结构·c++·算法·均值算法
wangchen_02 小时前
C++正则表达式
开发语言·c++·正则表达式
何以解忧,唯有..2 小时前
Python 元组(tuple)详解:使用、遍历与排序
开发语言·python
KANGBboy2 小时前
Python eval安全隐患
开发语言·python