我正在尝试执行以下操作:
try {
// just an example
$time = 'wrong datatype';
$timestamp = date("Y-m-d H:i:s", $time);
} catch (Exception $e) {
return false;
}
// database activity here
Run Code Online (Sandbox Code Playgroud)
简而言之:我初始化一些变量放在数据库中.如果初始化因任何原因失败 - 例如因为$ time不是预期的格式 - 我希望该方法返回false而不是将错误的数据输入数据库.
但是,像这样的错误不是由'catch'语句捕获的,而是由全局错误处理程序捕获的.然后脚本继续.
有没有解决的办法?我只是认为这样做更干净,而不是手动检查每个变量,考虑到在99%的情况下没有发生任何不良事件,这似乎是无效的.
我又把时间浪费在小事上了.我问自己 - 现在你 - 的问题是:CSS选择器/ HTML标记的"最佳方式"是什么?
我是否会不惜一切代价避免课程,让HTML保持纯净和漂亮,或者我是否想要添加类别的东西?
例如,如果我想设置我网站的各种表单按钮的样式,我该去
input[type="submit"] { /* styles */ }
Run Code Online (Sandbox Code Playgroud)
或者我为他们所有人添加一个"表单按钮"类
.form-button { /*styles */ }
Run Code Online (Sandbox Code Playgroud)
在这个简单的例子中,人们可能不会想太多,但如果我想用第三个链接来定义 - 语义,而不是表示 - 列表不同,我可以做到
.navigation ul:nth-of-type(2) a:nth-of-type(3) { /* styles */ }
Run Code Online (Sandbox Code Playgroud)
而只是给那一个链接一类"不同的链接"和使用
.different-link { /* styles */ }
Run Code Online (Sandbox Code Playgroud)
据我所知,在2013年,他们运行的所有计算设备和浏览器应该足够快,技术上次优的CSS选择器不应该对最终用户产生任何差别.
所以最后,它似乎是一个问题"我是否混乱了HTML(带有类),还是混乱了CSS(带有冗长的选择器)?"
有什么意见吗?