0

ACF カスタム フィールドを使用して wordpress で Web サイトを運営しています。約 100 行のテキストを含むカスタム フィールドがあります。日付と次のようなテキスト:

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

まず最初に、フィールド (「プロジェクト」と呼ばれる) を 2 つの個別の div に分割したいと考えました。最初の 50 行を 1 つの div に、残りを別の 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>

それは完璧に動作します! しかし、各行でテキストの日付を別々に取得し、日付を1つのdivに、テキストを別のdivに配置したいと思います...次のように:

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

しかし、これをコーディングする方法、最初のphpコード、および次のコードを行内で分割する方法を見つけることができません...部分文字列について聞いたので、すべて試しましたが、機能しません...誰か助けてくれますか? 本当に素晴らしいでしょう!あなたが私を理解してくれることを願っています!どうもありがとう

マチュー

4

2 に答える 2

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; ?>
于 2013-10-01T20:59:36.920 に答える
1

使用するだけです:

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

$test[0]日付とともにあり$test[1]、残りの行があります。

詳細情報: http://php.net/manual/pl/function.explode.php

于 2013-10-01T20:54:55.793 に答える