2013-10-01 197 views
0

我有一个使用ACF自定义字段的wordpress网站。 我有一个大约100行文字的自定义字段。 日期和这样的文字:将字符串拆分为两个div,并将其拆分为字符串php

2003-01 PARIS RATP PHILIDOR 
2003-01 BORDEAUX TRAMWAY 
2003-02 ILE-DE-FRANCE ÉCOLE DES MINES 
2003-05 PARIS CITROëN 
2003-05 PARIS TRAVERSIÈRE 

首先我想分裂场(称为“projets”)在两个单独的div,在一个DIV第50行,而在另一个div的,其余的: 这里是我使用的PHP代码:

<div class="columns_projets_1"> 
<p><?php 
$string = get_field('projets'); 
$array = explode("\n", $string); 
for($i = 0; $i <50; $i++){ 
echo $array[$i]; 
} 
?></p> 
</div> 

<div class="columns_projets_2"> 
<p><?php 
$string = get_field('projets'); 
$array = explode("\n", $string); 
for($i = 50; $i <count($array)-1; $i++){ 
echo $array[$i]; 
} 
?></p> 
</div> 

它完美的工作! 但我想每一行来获得日期separatly文本,把一个DIV的日期和另一个文本......是这样的:

<div class="date">2003-01</><div class="text">PARIS RATP PHILIDOR</div> 

,但我怎么也找不到代码这,有第一个PHP代码,并在行内拆分旁边...我听说有关子字符串,我试过eveything,但它不工作... 任何人都可以帮助我吗?会非常棒! 我希望你能理解我! 非常感谢

Mattieu

回答

1

您可以回声HTML了。 例如:

for($i = 0; $i <50; $i++){ 
    $dateAndText= explode(' ', $array[$i], 2); 
    echo '<div class="date">'.$dateAndText[0].'</div>'; 
    echo '<div class="text">'.$dateAndText[1].'</div>'; 
} 

虽然更清洁的方式来做到这一点会是这样的:

<?php for($i = 0; $i <50; $i++): 
    $dateAndText = explode(' ', $array[$i], 2); ?> 

    <div class="date"><?php echo $dateAndText[0]; ?></div> 
    <div class="text"><?php echo $dateAndText[1]; ?></div> 

<?php endfor; ?> 
+0

感谢您的帮助,但是当我将自己的代码添加到自己的代码中时,出现服务器错误...我无法找到我在做什么错误... – user2836404

+0

发布错误,以便我们可以帮助您 –

+0

这里是我的完整代码:https://gist.github.com/mattieumoreau/6785369 – user2836404

1

只需使用:

$test = explode(' ', $array[$i], 2); 

$test[0]会的日期,并在$test[1]你将有行的其余部分。

欲了解更多信息: http://php.net/manual/pl/function.explode.php

+0

+1的链接手册。 [所以]不是关于修复代码,而是知道如何修复自己。 – brasofilo