将更少的变量解析到PHP中
你能帮我吗 我有一个变量较少的文件,例如将更少的变量解析到PHP中,php,regex,parsing,less,Php,Regex,Parsing,Less,你能帮我吗 我有一个变量较少的文件,例如 /** preloader colors **/ @preloader_bg: #0081ff; @preloader_color: #fff; /** layout **/ @body_bg_image_position: ~'left top'; @body_bg_image_repeat: ~'no-repeat'; @body_bg_image_cover: ~'auto'; @body_bg_image: ~''; 我需要将此文件解析为PH
/** preloader colors **/
@preloader_bg: #0081ff;
@preloader_color: #fff;
/** layout **/
@body_bg_image_position: ~'left top';
@body_bg_image_repeat: ~'no-repeat';
@body_bg_image_cover: ~'auto';
@body_bg_image: ~'';
我需要将此文件解析为PHP并获得如下数组:
$less_vars = array(
'preloader_bg' => '#0081ff',
'body_bg_image_position' => 'left top'
);
这可以通过正则表达式或任何其他方式完成吗?您可以逐行迭代输入,然后在
:
处拆分行。在进行一些清理之后,这应该会为您提供键及其值
您可以逐行迭代输入,然后在
:
处拆分行。在进行一些清理之后,这应该会为您提供键及其值
您还可以使用一个正则表达式:
^@([^:]+):[~\s]*(['\"]?)([^;]*)\\2;?$
PHP():
输出:
array(6) {
["preloader_bg"]=>
string(7) "#0081ff"
["preloader_color"]=>
string(4) "#fff"
["body_bg_image_position"]=>
string(8) "left top"
["body_bg_image_repeat"]=>
string(9) "no-repeat"
["body_bg_image_cover"]=>
string(4) "auto"
["body_bg_image"]=>
string(0) ""
}
您还可以使用一个正则表达式:
^@([^:]+):[~\s]*(['\"]?)([^;]*)\\2;?$
PHP():
输出:
array(6) {
["preloader_bg"]=>
string(7) "#0081ff"
["preloader_color"]=>
string(4) "#fff"
["body_bg_image_position"]=>
string(8) "left top"
["body_bg_image_repeat"]=>
string(9) "no-repeat"
["body_bg_image_cover"]=>
string(4) "auto"
["body_bg_image"]=>
string(0) ""
}
切换到SASS,因为PHP有一个很棒的SASS解析器。另外,由于LESS和SASS是只应该被解析的语言,所以不要向后工作。谢谢,但是LESS not SASS中当前的问题是,您应该说明您到目前为止已经尝试了什么,以便其他人知道您已经做了一些研究或尝试了什么。否则,你不可能得到答案。请参阅StackOverflow帮助中心。@如果有人无法帮助切换到SASS,则没有问题,因为PHP有一个很棒的SASS解析器。另外,由于LESS和SASS是只应该被解析的语言,所以不要向后工作。谢谢,但是LESS not SASS中当前的问题是,您应该说明您到目前为止已经尝试了什么,以便其他人知道您已经做了一些研究或尝试了什么。否则,你不可能得到答案。请参阅StackOverflow帮助中心。@Sherif如果没有问题,如果有人帮不上忙,这就是我现在想的,非常感谢!这就是我现在想的,非常感谢!你是职业选手!非常感谢你!你是职业选手!非常感谢你!