我正在尝试编写从CSS代码中提取所有十六进制颜色的正则表达式.
这就是我现在拥有的:
码:
$css = <<<CSS
/* Do not match me: #abcdefgh; I am longer than needed. */
.foo
{
color: #cccaaa; background-color:#ababab;
}
#bar
{
background-color:#123456
}
CSS;
preg_match_all('/#(?:[0-9a-fA-F]{6})/', $css, $matches);
Run Code Online (Sandbox Code Playgroud)
输出:
Array
(
[0] => Array
(
[0] => #abcdef
[1] => #cccaaa
[2] => #ababab
[3] => #123456
)
)
Run Code Online (Sandbox Code Playgroud)
我不知道如何指定只匹配那些以标点符号,空格或换行符结尾的颜色.
我正在尝试创建简单的MVC骨架,并且我坚持使用依赖项.
这就是我现在拥有的:
$config = new Config();
$database = new Database($config);
$uri = new Uri('article/5');
$request = new Request($uri);
$response = new Response;
$router = new Router;
$dispatcher = new Dispatcher($request, $response, $router);
$dispatcher->dispatch(); // Routing, instantiate controller, execute action, send response
Run Code Online (Sandbox Code Playgroud)
问题是:任何对象如何访问任何依赖项?
一些例子:
我能想到的唯一可能是使用注册表,但这违反了得墨忒耳法则(询问你真正需要的是什么).
我想要做的就是选择两个日期之间的记录到第二精度(在YYYY-MM-DD HH:II:SS和YYYY-MM-DD HH:II:SS之间).包含日期和时间的字段采用TIMESTAMP格式.我甚至无法按日期选择记录.
查询
SELECT *
FROM INVOICE
WHERE CAST(INVOICE.WHENINVOICED AS DATE) = CAST('2010-10-15' AS DATE)
ORDER BY INVOICE.WHENINVOICED ASC
Run Code Online (Sandbox Code Playgroud)
不返回任何记录,也没有错误.此日期存在记录.