php - php字符串加法,双引号和单引号打印和回显混淆
问题描述
在php中,为什么添加“1”+“1”并且echo给出2没有放在双引号内使数字字符串?
<?php
$x = "1";
$y = "3";
$z = $x + $y;
echo($z); // this print 4
?>
另外,如果我们举这个例子,因为变量中的值在双引号内,如果你使用单引号来打印下面的表达式,为什么它会打印 $x + $y = $z
<?php
$x = "1";
$y = "3";
$z = $x + $y;
echo '$x + $y = $z'; // prints $x + $y = $z
?>
解决方案
因为您在这里使用“+”:
$z = $x + $y;
当您执行此操作时,如果可能,PHP 将转换为 int 以进行添加。如果你想存储“1 + 3”,你可以这样:
$z = $x . ' + ' . $y;
推荐阅读
- flutter - 日期选择器字段在 Flutter TextFormField 中没有响应
- android - Google play:我们在您的应用中发现了广告 SDK
- python - DRF 使用图像解析表单数据中的对象数组
- python - 如何随机化不和谐机器人所说的内容?
- python - 使用 QLineEdit() 时未捕获 Python Space Key Press 事件
- sas - 通过格式 SAS 传递多个变量
- javascript - 输入值从 VueJS 更改时未触发 JQuery 更改事件
- java - 将 MultiValueMap 参数作为 http 链接键值值发送
- python - 有人可以验证我的代码是否符合 python 和面向对象的编程“标准”吗?
- c# - MVC 方法接收空值