0

特定のアイテムを見つけて、CSS ファイルをテーマ エディター用に更新されたものに変更する必要があります。中かっこの間のすべての CSS を含む変数があります。指定されたタグの後の中かっこを選択して内容を置き換える方法を見つけるだけです。どんな助けでも大歓迎です!ありがとう

4

1 に答える 1

0

唯一の解決策ではないかもしれませんが、CSS をデータベースに入れ、その場で CSS ファイルを生成することを考えたことはありますか?

データベースに保存すると、何かが変更されるたびにファイルを再生成し、そのようにキャッシュしてパフォーマンスを節約することもできます。

既存のファイルを変更するには、おそらくファイルをトラバースして、CSS ファイルのスタイル規則を手動で変更し、そのような最後のタグ/クラス/ID 式を記憶して置き換える必要がないことを期待する必要があります (おそらく機能しません)。箱から出して!):

$newFileContent = "";
$searchClass = "td.content";
$lines = file("style.css");
$insideSearchedTag = false;
foreach($lines as $line) {
  if (strstr($line, $searchClass) !== false) {
    $insideSearchedTag = true;
    $newFileContent .= "\n" . $line;
  }
  else if (strstr($line, "}") !== false) {
    $insideSearchedTag = false;
    $newFileContent .= "\n" . $line;
  }
  else if ($insideSearchedTag) {
    // search/replace the content you want to replace.
    $newLineContent = str_ireplace($searchStyle, $replaceStyle, $line);
    $newFileContent .= "\n" . $newLineContent;
  }
  else { $newFileContent .= "\n" . $line; }
}
fwrite($file, $newFileContent);
于 2012-09-07T11:32:04.473 に答える