我听说过PHP的一些性能提示,例如根据情况使用strtr()over str_replace()over preg_replace().
至于使用某些功能而不是其他功能和代码风格,您知道哪些性能提示?
编辑:我不是在谈论使用的东西,使代码的可读性,像!isset($foo{5})过strlen($foo) < 5,我说这样的事情使用参看preg_功能在ereg_功能正则表达式.
编辑:我之所以要问这个问题并不是为了挑战何时进行优化,而是为了大致了解在一组有限的替代方案中最有效的方法.例如,检查mysql语句是否返回错误可以说是比开始时抑制错误更好的做法.
我正在开发一个javascript libarary,我使用这个函数来匹配元素:
$ = function (a)
{
var x;
if (typeof a !== "string" || typeof a === "undefined"){ return a;}
//Pick the quickest method for each kind of selector
if(a.match(/^#([\w\-]+$)/))
{
return document.getElementById(a.split('#')[1]);
}
else if(a.match(/^([\w\-]+)$/))
{
x = document.getElementsByTagName(a);
}
else
{
x = document.querySelectorAll(a);
}
//Return the single object if applicable
return (x.length === 1) ? x[0] : x;
};
Run Code Online (Sandbox Code Playgroud)
有时我会想要过滤这个函数的结果,比如挑出一个div span或者一个#id div或其他一些相当简单的选择器.
如何过滤这些结果?我可以创建一个文档fragement,并在该片段上使用querySelectorAll方法,或者我是否必须采用手动字符串操作?
我只关心现代浏览器和IE8 +.
如果你想查看我的库的其余部分,它就在这里:https://github.com/timw4mail/kis-js
编辑:
为了澄清,我希望能够执行类似$ _(selector).children(other_selector)的操作并返回与该选择器匹配的子元素. …
我正在寻找一种算法来压缩我用PHP编写的CMS的HTML输出,用CodeIgniter框架编写.
我想试图任何尖括号之间除去空白,除 <script>,<pre>以及<style>元件和简单地忽略为了简化的那些元素.我应该澄清这是连续标签之间的空白,它们之间没有文字.
我应该如何解析HTML以找到我想要删除的空格?
编辑:要开始,我想删除不在<pre>标签中的所有制表符.这可以用正则表达式完成,我敢肯定,但有哪些替代方案?