neemzy / stylus
此包的最新版本(dev-master)没有可用的许可证信息。
PHP 的 Stylus 预处理器
dev-master
2016-05-10 12:24 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-09 14:14:19 UTC
README
PHP 的 Stylus 解析器
CSS 需要一位英雄...又一次
当我第一次看到 Stylus 时,我觉得它非常棒,并将它实现到了我的 nodejs 应用程序中。当我开始我的下一个项目,一个 PHP 项目时,我对 Stylus 的喜爱如此之深,以至于我想将它也应用到我的 PHP 项目中。令人惊讶的是,我找不到任何 PHP 的 Stylus 解析器。所以我像任何开发者一样,创建了属于自己的。并且我想分享它。
当前功能
- 省略花括号
- 省略冒号
- 省略分号
- 自定义函数
- 导入其他文件
- '&' 父引用
- 混入
- 插值
- 变量
使用 Stylus.php
使用 Stylus.php 非常简单!只需包含以下代码
require('Stylus.php'); $stylus = new Stylus(); $stylus->setReadDir('read'); $stylus->setWriteDir('write'); $stylus->setImportDir('import'); //if you import a file without setting this, it will import from the read directory $stylus->parseFiles();
这就是全部了!现在关于 parseFiles()
函数的一个快速说明。它有一个名为 overwrite
的参数,默认为 false
。这是一个标志,指示您是否希望覆盖已解析的 Stylus 文件。
这意味着您可以在每个页面上包含此代码,而无需每次都解析 Stylus 文件。但是,在开发或更新 Stylus 文件时,请确保将 overwrite
设置为 true
,以便更改将反映在您的网站上。
解析单个文件或字符串
您可以选择使用以下语法来精确选择要执行的操作,而不是编译读取目录中的所有文件。
// From string to string $css = $stylus->fromString("body\n color black")->toString(); // From string to file $stylus->fromString("body\n color black")->toFile("out.css"); // From file to string $css = $stylus->fromFile("in.styl")->toString(); // From file to file $stylus->fromFile("in.styl")->toFile("out.css");
toFile($file, $overwrite)
接受两个参数,都是可选的。
$file
: 要写入的文件名,如果省略或为 null,则将输入文件名从.styl
更改为.css
。$overwrite
: 指定是否在找到相同名称的文件时解析并写入文件。
变量赋值
变量赋值的方式与常规 Stylus 相同。但是,您现在可以选择在解析 stylus 文件之前通过调用 assign
函数添加 PHP 变量。以下是一个示例
PHP
$stylus->assign('px_size', '30px'); $stylus->parseFiles();
Stylus
div font-size px_size
结果
div { font-size: 30px; }