PHP的输出语法
一、echo
- 只能输出标量数据类型,对于任何数据都可以转为字符串输出
- echo是PHP的一种特殊的'指令',不一定要像函数的那样()去使用,可以直接紧跟一个空格输出信息,可以是多个参数
<?php
$v1=10;
$v2='10';
$v3=true;
$v4=false;
$v5=[10,true,null,'字符串'];
echo $v1,'<br>',$v2,'<br>',$v3,'<br>',$v4,'<br>',$v5;
?>

二、print
- 只能输出标量数据类型,对于任何数据都可以转为字符串输出
- 与echo1的区别是只能输出一个参数
<?php
$v1=10;
$v2='10';
$v3=true;
$v4=false;
$v5=[10,true,null,'字符串'];
print($v1);
echo '<br>';
print($v2);
echo '<br>';
print($v3);
echo '<br>';
print($v4);
echo '<br>';
print($v5);
?>

- 和echo的区别在于,echo是一种语法结构,没有返回值,print是一种函数,有返回值
PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。
因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1。$r = print "Hello World";
这意味着print可用在一些复杂的表达式中,而echo则不行。但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。
echo 没有返回值;print 有返回值,print 的返回值总是1。
三、print_r
- 可以输出标量数据类型,对于任何数据都可以转为字符串输出
- 也可以输出数组,但是不能输出布尔值
<?php
$v1=10;
$v2='10';
$v3=true;
$v4=false;
$v5=[10,true,null,'字符串'];
print_r($v1);
echo '<br>';
print_r($v2);
echo '<br>';
print_r($v3);
echo '<br>';
print_r($v4);
echo '<br>';
print_r($v5);
?>

四、var_dump()
- 是一个函数,必须跟上()调用
- 主要是用于程序员进行代码的调试,可以输出十分详细的信息
- 注意这种方法不适合输出信息给用户查看
<?php
$v1=10;
$v2='10';
$v3=true;
$v4=false;
$v5=[10,true,null,'字符串'];
var_dump($v1);
echo '<br>';
var_dump($v2);
echo '<br>';
var_dump($v3);
echo '<br>';
var_dump($v4);
echo '<br>';
var_dump($v5);
?>

五、sprintf()
- 格式:sprintf(格式化字符串,变量1,变量2,.....)用于格式化输出
- 格式化输出占位符%b(二进制)、%d(十进制)、%o(八进制)、%x(十六进制)
- %f(小数),默认保留六位小数点,%.2f----保留两位小数点
<?php
$v1=255;
echo sprintf('二进制为:%b<br/>十进制为:%d<br/>八进制为:%o<br/>十六进制为:%x<br/>',$v1,$v1,$v1,$v1);
$v2=5;
echo sprintf('小数:%f',$v2),'<br>';
echo sprintf('小数:%.2f',$v2),'<br>';
echo sprintf('小数:%.10f',$v2);
?>

PHP的输出语法的更多相关文章
- PHP 基本语法,字符串处理,正则
<?php //注释语法 /*多行注释*/ 输出语法 Echo "hello","worle"; //可以输出多个字符串 Print ...
- 9.12/ css3拓展、js基础语法、程序基本知识、数据类型、运算符表达方式、语句知识点
css3拓展: <display:none> 将某个元素隐藏 <visibility:hidden> 也是将某个元素隐藏 <display:block&g ...
- python学习道路(day1note)(变量,注释,用户输入,格式化输出,if,while,for循环并扩展练习)
python是一门动态解释性的强类型定义语言,其应用范围非常之广 1:进入python语言 #!/usr/bin/env python #_*_coding:utf-8_*_ print(" ...
- JS基础语法
1.注释语法://单行注释./*多行注释*/. 2.输出语法:{1.alert("要输出的字符串"):.alert(输出其类型): 2.confirm():弹出一个可以和用户交互 ...
- PHP基础语法: echo,var_dump, 常用函数:随机数:拆分字符串:explode()、rand()、日期时间:time()、字符串转化为时间戳:strtotime()可变参数的函数:PHP里数组长度表示方法:count($attr[指数组]);字符串长度:strlen($a)
PHP语言原理:先把代码显示在源代码中,再通过浏览器解析在网页上 a. 1.substr; //用于输出字符串中,需要的某一部分 <?PHP $a="learn php"; ...
- Php 输出语句
输出语句 echo 示例: print(); 示例: 只能输出标量数据类型,无法输出布尔false print_r(); print_r可以以比较容易理解的方式显示数据 示例: var_dump(); ...
- php基础语法(20161021)
上午: 数据库总结: 1.创建数据库 create database 数据库名称 删除数据库 drop database 数据库名称 2.创建表 create table 表名 ( 列名 类型(长度) ...
- JavaScript 简介及语法语句
JS脚本语言 全称JavaScript:网页里面使用的脚本语言 非常强大的语言 基础语法 注释语法 单行注释// 多行注释/**/输出语法 ...
- JavaScript基础之注释,类型,输出,运算符
JavaScript是一种依托于网页为宿主的脚本语言,JavaScript是一门非常强大的语言,尤其对于web端,用途广泛,好用,偏向于操作网页,可以操作网页中的任何一个元素,JavaScript的缺 ...
随机推荐
- 1144: 零起点学算法51——数组中删数(C语言)
题目: 题目来源WUSTOJ 源代码: #include<stdio.h> int main() { int n, m, i, a[20]; while (scanf("%d&q ...
- 题解-CTS2019随机立方体
problem \(\mathtt {loj-3119}\) 题意概要:一个 \(n\times m\times l\) 的立方体,立方体中每个格子上都有一个数,如果某个格子上的数比三维坐标中至少有一 ...
- [BZOJ4755][JSOI2016]扭动的回文串(manacher+Hash)
前两种情况显然直接manacher,对于第三种,枚举回文中心,二分回文半径,哈希判断即可. #include<cstdio> #include<algorithm> #defi ...
- Linux踢出登陆用户的正确姿势
首先who(或w)查看需要杀死的终端名,然后执行: pkill -9 -t pts/? pkill相当于ps和kill的结合,用法和killall类似,根据进程名来杀死一类进程(kill是杀死单个) ...
- 【转载】Intellij IDEA神器居然还有这些小技巧
概述Intellij IDEA真是越用越觉得它强大,它总是在我们写代码的时候,不时给我们来个小惊喜.出于对Intellij IDEA的喜爱,我决定写一个与其相关的专栏或者系列,把一些好用的Intell ...
- html启动本地.exe文件
之前没有了解这个内容,还是一个小伙伴在面试中遇到的一个题目,感觉挺有意思就研究了一下这个东西到底是怎么用的.搜了一下解决方法,是添加注册表,自己运行了可以使用 第一步:首先打开注册表,方法是 win+ ...
- vue+iview 通过a标签实现文件下载
vue+iview 通过a标签实现文件下载 方法一: 注意: 如果下载的文件放在本地目录下,一定要将模板文件放到 public 目录下,否则由于权限问题找不到文件 路径: 项目更目录-->pub ...
- 我们为什么要用redis
Redis的5要点: 1.为什么要选择Redis:介绍Redis的使用场景与使用Redis的原因: 2.Redis常用命令总结:包括时间复杂度总结与具体数据类型在Redis内部使用的数据结构: 3.R ...
- vue的data里面的值是数组时,在更改其某一项的时候,怎么触发视图的重新渲染?
1. 设置对象或数组的值:Vue.set(target,key,value) :2.删除对象或数组中元素: Vue.delete ( target,key) ;3. 数组对象直接修改属性,可以触发视图 ...
- Feign报错'xx.FeignClientSpecification', defined in null, could not be registered.
解决: 在application.yml中配置: spring: main: allow-bean-definition-overriding: true 参考:https://blog.csdn.n ...