【发布时间】:2012-05-13 14:36:36
【问题描述】:
我搜索了 PHP 手册、Stackoverflow 和一些论坛,但我对一些 PHP 逻辑感到困惑。也许我只是累了,但我真的很感谢任何人的帮助或指导。
我有一个 PHP 字符串,比如说:
$string = 'cats cat1 cat2 cat3 dogs dog1 dog2 monkey creatures monkey_creature1 monkey_creature2 monkey_creature3';
最终,理想情况下,我希望我的最终输出看起来像这样,但现在只需获取数组就可以了:
<h2>cats</h2>
<ul>
<li>cat1</li>
<li>cat2</li>
<li>cat3</li>
</ul>
<h2>dogs</h2>
<ul>
<li>dog1</li>
<li>dog2</li>
</ul>
<h2>monkey creatures</h2>
<ul>
<li>monkey_creature1</li>
<li>monkey_creature2</li>
<li>monkey_creature3</li>
</ul>
但有一个问题,有时字符串会略有不同:
$string = 'cats cat1 cat2 cat3 cat4 cat5 cats6 dogs dogs1 dogs2 monkey creatures monkey_creature1 lemurs lemur1 lemur2 lemur3';
无论如何,这是我在 Stackoverflow 上的第一个问题,在此先感谢大家的帮助!
编辑:我在某些限制下工作,我无法更改字符串之前的任何代码。我知道所有的父母('猫','狗','狐猴','猴子生物(有空间)'
【问题讨论】:
-
哦。这是一个非常好的问题。我认为它会从explode(" ", $string) 开始,但这只是其中的第一步。做出一个俗气的假设是否安全,比如前 3 个字母对于一个组来说总是唯一的
-
monkey creatures并没有像它应该的那样真正与它的孩子相关。另外,为什么你的数据源是这样格式化的? -
@jprofitt 我知道...查看我的编辑。
-
@BenRoux 我想像这样,但我无法弄清楚整个过程中的逻辑。我会提前知道所有的父母(猫、狗、猴子、狐猴等)
-
示例字符串中是
monkey creatures还是monkey_creatures?这很重要
标签: php string parsing split explode