【解決策】カスタムルールに基づく文字列生成配列出力ソリューション

WBOY
リリース: 2016-06-13 13:16:04
オリジナル
1063 人が閲覧しました

【解決策】 文字列生成された配列はカスタムルールに従って出力されます
文字列生成された配列はカスタムルールに従って出力されます
関数split_array("Baidu#http://www.baidu.com/nBaidu# http://www.baidu.com/n","n|#","{0}");
出力が必要
Baidu
Baidu
この関数はどうやって書くのですか?

-----解決策---------
次のように記述します

PHP コード
split_array("Baidu#http://www.baidu.com/nBaidu#http://www.baidu.com/n","n|#","<a href='{1}'> { 0}");

関数 split_array($str, $pattern, $template) {
  $cnt = substr_count($template, '{'); // テンプレート内の置換位置の数をカウントします。
  $tmp = preg_split('/'.$pattern.'/', $str, -1, PREG_SPLIT_NO_EMPTY) // ルールに従ってデータを分割します。
  $m = カウント($tmp) % $cnt;
  if($m) $tmp = array_slice($tmp, 0, -$m); //余分なデータを削除します。
  $tmp = array_chunk($tmp, $cnt); // グループデータ
  $r = 配列();
  foreach($tmp as $m) {
    $t = $template;
    foreach($m as $i=>$v) {
      $t = str_replace("{{$i}}", $v, $t);
    }
    $r[] = $t;
  }
  echo join('<br>', $r);
<div class="clear"></div>
ログイン後にコピー
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート