好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

phpecho原理 phpize原理

很多站长朋友们都不太清楚phpecho原理,今天小编就来给大家整理phpecho原理,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 PHP中echo和print的区别 2、 在php中echo() print() print-r()区别 3、 PHP echo()语法问题 4、 php中echo和print的区别 5、 php echo函数 是什么意思 6、 PHP按字母顺序输出文件问题,怎么解决 PHP中echo和print的区别

在实际使用中, php 语言的 print 和 echo 两者功能几乎完全一样。

两者之间主要的区别在于:

1、echo 可以同时输出多个字符串,而 print 则只可以同时输出一个字符串。

2、当以函数形式调用时,两者的返回值不同:

void echo ( string $arg1 [, string $... ] )

int print ( string $arg )

echo 没有返回值,而 print 返回值 int。

在php中echo() print() print-r()区别

echo

可以一次输出多个值,多个值之间用逗号分隔。echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。

print()

函数print()打印一个值(它的参数),如果字符串成功显示则返回true,否则返回false。

print_r()

可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。

PHP echo()语法问题

你的这行语句中出现了多处概念性的错误

一、PHP字符串的句点连接:

1. php独立的字符串与变量、变量与变量、数字与变量、字符串与字符串之间,可以使用句点“."进行连接

示例:$result_str = "aaa" . $str;

注意看它们之间的形式,字符串使用单引或双引括起来,然后使用句点,后边跟着变量,反过来亦然: $result_str = $str . "aaa";

这样,你的写法按照这种语法结构书写就出现了问题,因为你的字符串之间出现了不应该出现的双引,如果按第1点所讲,你的写法应该是:

echo "<img>/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg</img><a herf = ".$dir. "\" . $_File . ">" . $File . "</a><br />"

2. 可这样依然不正确,因为在PHP字符串中,有一个特殊存在的字符”\“,这个字符是用来转义的特殊存在,如果想让它正常出现在字符串中,在”\"的前面,应该再加一个转义符”\“,也就是:”\\“

echo "<img>/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg</img><a herf = ".$dir. "\\" . $_File . ">" . $File . "</a><br />"

二、上面的这种写法或许不是你的初衷,你本是想把变量写在双引号之间,让它依然当做变量输出,这是PHP的另一种特殊语法结构

1. 在PHP中,双引号之间的变量依然会被PHP解析器解析为变量,而不是字符串:

示例:echo "$abc" 与 echo $abc相同

2. 再复杂一些,就是既有变量又有字符串: echo "str$abc"

这样,比如$abc里面存放的是”u“这个字符串,那么输出的就是:"stru"

3. 反过来,如果我想把变量放在前面: echo "$abcstr" 这样就不行了,你必须要保证变量后面跟着的是非字母、数字和下划线才行,否则PHP解析器会认为你的变量不是$abc,而是$abcstr

你的例子中不存在这一条的问题;

4. 那么按照这一点来看,你的写法好像并没有错误,那么看第三条:

三、想在双引号之间输出双引号的字符串,需要使用到转义字符:

1. 比如有这样的一个字符串: echo "say:"yes"";

这里,我本是想输出双引号,但发现,PHP解析器不认识它们,这是对的,不认识才对,认识了反倒不正常,因为PHP会把双引号当成字符串的边界。

解决: echo "say:\"yes\"";

2. 你的问题中就出现了这种情况(如果按照你的初衷来看)

你的问题: echo "<img>/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg</img><a herf = \"$dir\$_File\">$File</a><br />"

注意,你的这行字符串中,两个需要输出的双引号变成了:\"

可这样还不行,你里面出现了一个\,就是目录的分界,那这个也需要转义:

echo "<img>/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg</img><a herf = \"$dir\\$_File\">$File</a><br />"

四、原本到这里,看上去好像没有问题了,但有一个额外的现象要多提一下:

HTML中的<img>标签,你写得非常不正解,这个标签是自封闭型标签,在XHTML1.0中,规范的写法是:

<img src="/data/upload/help/202303/02/8a54cef936cd2720ed4d70ba76f46cfe.jpg" alt="" />

五、总结,你的程序最后有两种可能的写法:

1. 利用句点连接语法和双引号转义:

echo "<img src=\"/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg\" alt=\"\"><a herf = \"".$dir. "\\" . $_File . "\">" . $File . "</a><br />";

2. 利用双引号之间的变量可以解析:

echo "<img src=\"/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg\" alt=\"\"><a herf = \"$dir\\$_File\">$File</a><br />"

3. 其实还有第三种写法,就是利用单引号之间可以出现不用转义的双引号,以及单引号之间的特殊字符无需转义的特性写法,这个写法我就不详细说原理了:

echo '<img src="/data/upload/help/202303/02/73688444a73a76169d03b689a7e785cf.jpg" alt=""><a herf = \"'.$dir. '\\' . $_File . '">' . $File . '</a><br />';

php中echo和print的区别

echo 和 print 都不是函数,而是语言结构,所以圆括号都不是必需的。他们的区别在于:

(1) echo可以输出多个字符串,像下面这样:

echo 'a','b','c';

如果你非要加上圆括号,注意写成echo ('a','b','c');是错误的,应该写成:

echo ('a'),('b'),('c');

它没有像函数的行为,所以不能用于函数的上下文

(2) print只能输出一个字符串,它可以表现得像一个函数,比如你可以如下使用:

$ret = print 'Hello World';

所以它能用在更复杂的表达式中。

php echo函数 是什么意思

echo 函数实际不是一个函数。

作用是输出一个或多个字符串。

<?php

echo 1;

//输出 1

echo "aa";

//输出 aa

PHP按字母顺序输出文件问题,怎么解决

这个是echo语句的问题

程序先执行了类中方法,从而影响了原本的输出顺序;

可以使用echo的多参数输出用法,用逗号连接

echo $ret->rt($i0),$arr['shi'],$ret->rt($i1),$arr['yuan'],$arr['zheng'];就可以了

具体的原因是$ret->rt()这个方法中有自己的echo,会先执行得到的结果再和其他的字符串连接起来执行echo输出,

原理出处在php手册的echo那一节,用户评论中nikolaas mennega 的经验

关于phpecho原理的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于phpecho原理 phpize原理的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did209895
更新时间:2023-05-03   阅读:17次

上一篇: php电商源码开源 php源码交易平台

下一篇:snmpphp的简单介绍

相关资讯

最新资料更新

  • 1.php语法基础csdn php语言基础
  • 2.php保存用户信息 php登录成功保存session
  • 3.php循环处理速度 phpforeach循环
  • 4.php推荐接口排重 接口 php
  • 5.php网页老是跳转 php 网页跳转
  • 6.phpcurl解析失败 php在html中无法解析
  • 7.phphuoqv多选 php选择语句
  • 8.iconv函数php iconv函数参数
  • 9.php瀑布流响应 html 瀑布流
  • 10.php连接vertica php连接mysql
  • 11.php解析img PHP解析器
  • 12.射洪php招聘 射洪平台公司招聘
  • 13.php生成缓存图片 php缓存机制有哪些
  • 14.php课堂系统 php网课系统
  • 15.php棋牌小游戏 棋牌类小程序
  • 16.php输入日期表单 php输出日历表
  • 17.php怎么使用css php怎么使用数据库锁
  • 18.PHP画饼图动态 python 动态饼图
  • 19.php常量乱码 phpstorm乱码
  • 20.phpajix的简单介绍

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]