Я автоматизирую некоторые задачи, используя компрессор phing и yui, и я столкнулся с проблемой памяти. Мне любопытно, есть ли лучший способ справиться с этим.Использование памяти php exec с phing
Часть Phing сценария сборки
<target name="finalize">
<property name="cssfolders" value="folder1, folder2, folder3" />
<foreach list="${cssfolders}" param="dir" target="minifyCSS" />
<property name="jsfolders" value="folder1, folder2, folder3" />
<foreach list="${jsfolders}" param="dir" target="minifyJS" />
</target>
<target name="minifyCSS">
<exec command="find ${dir}/dev -name '*.css' -exec basename {} \; | while read file; do java -jar ${yuiCompressor} -o ${dir}/prod/$file ${dir}/dev/$file; done" />
</target>
<target name="minifyJS">
<exec command="find ${dir}/dev -name '*.js' -exec basename {} \; | while read file; do java -jar ${yuiCompressor} -o ${dir}/prod/$file ${dir}/dev/$file; done" />
</target>
Если я дробить цель ФИНАЛИЗ на два, один для CSS и один для JS - то скрипт будет работать. Но когда я их совмещаю, у меня проблема. Прежде чем все скажут, что нужно просто разделить цель, с которой я в порядке, я боюсь, что, когда будет добавлено больше JS-файлов, я снова займусь этой проблемой.
Мне любопытно, есть ли лучший способ выполнить мой план с постоянным мониторингом и увеличением использования памяти php. Возможно, более эффективная команда для выполнения или использование функции php, которая позволит мне использовать больше памяти или диска, если я исчерпаю выделенные ресурсы?
Боковой проект - прикосновение к любому, кто знает, как объединить миниируемые цели в один. Они практически одинаковы, за исключением того, что мне нужно знать, какой тип файла «найти» для каждого из них (css или js). Если есть способ справиться с этой проблемой, я хочу знать! :)