2014-12-24 5 views
1

Мне нужно импортировать целые файлы css, доступные в определенной папке (css) Есть ли способ сделать это, не импортируя файл по файлу?импортировать целые файлы в каталог

необходимо импортировать активы/css/*?

<link href="<?php echo base_url(); ?>assets/css/*" rel="stylesheet"/> 
     <title>Untitled Document</title> 
     <style> 
      #area { 
       max-width: 600px; 
      } 
     </style> 


</head> 
+0

Вы можете попробовать 'Glob()' => Http: // php.net/manual/en/function.glob.php –

ответ

4

Редактировать: Поздний ответ кажется, и вы приняли ответ. Если бы я знал, я бы не представил это. Я был занят тестированием и формулированием.

Как я уже сказал в комментарии, вы можете использовать функцию PHP glob() для достижения этого, а также цикл foreach. Вот что вы можете сделать:

foreach (glob("*.css") as $css) { 
    echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"$css\">\n"; 
} 

Что в источнике HTML будет производить что-то похожее на:

<link type="text/css" rel="stylesheet" href="css_1.css"> 
<link type="text/css" rel="stylesheet" href="css_2.css"> 
<link type="text/css" rel="stylesheet" href="css_3.css"> 

В зависимости от того, где файлы расположены, возможно, потребуется изменить путь к этим файлам.

Ie:

foreach (glob("path/to/css/folder/*.css") 

Размещение PHP для него внутри <head></head>

Например:

<!DOCTYPE html> 

<head> 

<?php 

    foreach (glob("*.css") as $css) { 
     echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"$css\">\n"; 
    } 

?> 

</head> 

<body> 

    <div id="css_1">Style 1</div> 
    <br> 
    <div id="css_2">Style 2</div> 
    <br> 
    <div id="css_3">Style 3</div> 

</body> 
</html> 
+0

вот что я пытался найти. Thanx –

+0

@ МилиндаБандара Добро пожаловать, Милинда, * ура * –

1

Я думаю, что нет никакого способа, вы можете импортировать css файлы из папки, делая assets/css/*. Но вы можете объединить файлы из папки css в один файл, а затем минимизировать этот файл css и импортировать его.

Вы можете использовать инструменты для сборки, такие как gulp, чтобы выполнить эту задачу. Проверьте это https://www.npmjs.com/package/gulp-minify-css

1

Нет. С одной стороны, клиент понятия не имел, что запросить (он может запросить только один файл на каждый HTTP-запрос, чье имя ему нужно знать). Вы можете сделать это четырьмя способами:

  • Объедините все ваши файлы CSS в один файл, а затем ссылку на этот файл.
  • Есть скрипт, который будет конкатенировать все файлы CSS в один ответ, а затем ссылка на этот скрипт
  • ли цикл в шаблоне происходит по всему CSS-файлы, которые будут выдавать один <link> элемент каждого файла.
  • Если у вас есть только несколько файлов CSS, которые не меняются, вы можете просто написать их все вручную.