簡體   English   中英

我的語法有什么問題嗎?

[英]What is wrong with my syntax here?

目標是計算一組用戶文本中的段落數。

(在本練習中,我將假定其始終大於5個段落)

然后,我想將段落數echo "yehhoo" ,四舍五入,然后在兩者之間輸入一些內容( echo "yehhoo" )。

我確實了解我獲得$newvalue方式不是很好,我也希望對此有所幫助...

<?php

$choppedup = explode("<p>",$node->field_long_body[0]['safe']);
$choppedpos = count($choppedup);
$choppedpos2 = $choppedpos/2;
$newvalue = floor($choppedpos2);

//I know this is working to here... the rest not so sure.

for($j = 0; $j < $choppedup; $j ++):
  print $choppedup[$j];
  if ($j == $newvalue):
    echo "yehhoo" ;       
  endif;
endif;
?>

謝謝

for 
...
endfor;       # not endif

您的$newvalue計算並不可怕,對於數組迭代,我寧願建議foreach循環(使用花括號):

foreach($choppedup as $ind => $p) {
    echo $p;
    if ($ind == $newvalue) {
        echo 'yehoo';
    }
}

花括號的“ Yehhoo”!

for($j == 0; $j < $choppedup; $j ++) {
     print $choppedup[$j];
     if ($j == $newvalue) {
          echo "yehhoo";
     }
}

為什么要進行如此復雜的循環來計算段落標簽的數量?

您可以執行以下操作:

 $sInput = '<p>Hello World</p><p>What is going on</p><p>Blah</p>';
 if(preg_match_all('/<p>/', $sInput, $arMatches)!==false)
  print count($arMatches[0]) . ' paragraphs<br/>';

當然,以上內容需要做一些工作以確保段落標記之間存在文本,但這應該可以滿足您的需要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM