php - 在 echo 上的 < 符号之后替换,但 var_dump 显示正确的长度

标签 php string php-5.6

我必须使用给定的单词生成一个字符串,假设“wheel”用于全文 bool 模式搜索。但是当我尝试设置优先级时,该单词的第二次出现是在“<”符号之后替换:

$word = 'wheel';
$x = '+(>' . $word . ' <' . $word . '*)';
echo $x;

期望的结果应该是这样的:

+(>wheel <wheel*)

但结果看起来像这样:

+(>wheel

但是当我使用 var_dump 时,我得到了正确的长度,即 17

我使用的是 PHP 5.6.40 知道为什么吗?

最佳答案

不知道为什么会发生这种情况,但是如果您在 < 和单个逗号后面添加空格,则可以正常工作。像这样

$word = 'wheel';
$x = '+(>' . $word . ' < ' . $word . '*)';
echo $x;

注意:< Symbol 之间的额外空格和' Symbol

关于php - 在 echo 上的 < 符号之后替换,但 var_dump 显示正确的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58471390/

相关文章:

javascript - MVC : deny simultaneously data-edit

php - 我们可以通过用 PHP 扩展它来在函数中注入(inject)更多行吗?

java - 错误: cannot find symbol (using replaceAll ) codenameone

c# - 如何从字符串变量创建常量字符串

php - 如何从另一个php文件在后台执行一个php文件

linux - Vesta CP 升级 PHP 版本到 5.6 (CentOS 64bit)

php - 通过 Cronjob 在 Silverstripe 中执行一个函数

php - 使用数组访问对象

java - 在Java中正确使用Regex,Regex不匹配

linux - 在 Linode 服务器 Debian 9 上为 php5.6 安装 GD 库时依赖关系中断