我有一个保存在名为$ output1的字符串中的输出流,这将显示给用户。现在,如果我有另一个名为$ output2的流与$ output1加上几行相同,我怎样才能输出$ output1中不在$ output1中的$ output的部分。
例如:
$output1="this cat is";
$output2="this cat is mine";
我想输出:
这只猫是我的
答案 0 :(得分:1)
有两种方法可以做到这一点 -
1)<?php echo $output2; ?>
- 你将输出这只猫是我的。
2)<?php echo $output1.str_replace($output1, "", $output2); ?>
我建议您使用第一个示例。
无论如何,请描述更多你想要达到的目标。
目前,您指定的两个变量几乎相同。您只需指定一个变量即可使用。
这与此类似 -
你有两篇论文,一篇是你写的“这只猫是”,另一篇你写过“这只猫是我的”。你将从第二篇论文中删除“这只猫是”,只留下“我的”。所以你拿胶水把第一张纸和“我的”粘在一起。你会浪费时间并使其变得复杂。
如果您只想获得“我的”,请使用 - str_replace($output1, "", $output2);
答案 1 :(得分:0)
$output1="this cat is";
$output2="this cat is mine";
$min=(strlen($output1)<strlen($output2)) ? $output1 : $output2 ;
$max=(strlen($output1)>strlen($output2)) ? $output1 : $output2 ;
$pos= strpos($max,$min);
//if you want "this cat is mine", maxima string
if($pos!==FALSE) echo $max;
//if you want " mine", part of the string only in the maxima one.
if($pos !==FALSE) echo substr($max,strlen($min));
//if you want "this cat is" from shortest string and " mine" from the other one.
if($pos !==FALSE) echo $min.substr($max,strlen($min));