我正在使用YQL来获取Feed列表,如下所示:
SELECT title, link, pubDate FROM rss
WHERE url IN ('.implode("','", array_values($urls)).')
Run Code Online (Sandbox Code Playgroud)
$urls 包含Feed网址:
$urls = array(
'delicious' => 'http://feeds.delicious.com/v2/rss/foo',
'delicious' => 'http://feeds.delicious.com/v2/rss/anotherfoo',
'lastfm' => 'http://ws.audioscrobbler.com/1.0/user/foo/recenttracks.rss',
...
);
Run Code Online (Sandbox Code Playgroud)
我得到一个带有title/link/pubdate字段的项目数组.除了"链接"字段,我没有得到任何可能告诉我项目来自何处的信息.
如何包含array_keys($urls)与URL(值)对应的附加字段?基本上,我需要告诉我是从哪个网站某个字段的项目来自像delicious,lastfm等等.
对于lastfm,我可以检查strpos是否存在"last.fm"字符串$item['url'],但有美味的链接,这是不可能的:(
如何在drop事件上绑定函数,但在droppable()函数外部?
$('#list').droppable({
// ...
drop: function(e,ui) {
// this works...
},
});
// ..but I want to bind my function here
Run Code Online (Sandbox Code Playgroud)
这可能吗?
仅仅因为可爱功能命名原因而使用重载是一个好主意吗?:)
例如:
echo $store->product->getPrice($currency);
product 将调用__get然后__getObject('product')执行magik的操作并返回当前正被视为对象的产品(如果是第一次调用则将其实例化)echo $store->product('dog')->getPrice($currency);
product将调用__call,然后调用__callObject('product',...)...if(!$store->product)
$store->product = new Product();
echo $store->product->getPrice($currency);
Run Code Online (Sandbox Code Playgroud)
和
$product = new Product('dog');
echo $product->getPrice($currency);
Run Code Online (Sandbox Code Playgroud)
我真的很喜欢重载,因为我可以为我的课程获得很好的API.但缺点是重载的东西比直接调用属性/方法慢15倍.
可以像这样使用重载吗?
在我目前的应用程序中,我不会将重载成员调用超过1000次.这不应该对性能产生太大影响.也许额外0.1秒,考虑到一个站点通常在0.5 - 1s生成并不是那么多
假设你有一个独特的对象,它被所有其他类和函数使用......就像$application.
您将如何在函数中访问此对象?
在每个函数中使用全局变量:
global $application;
$application->doStuff();
Run Code Online (Sandbox Code Playgroud)创建一个函数,就像application()将对象实例化为静态变量并返回它一样; 然后在需要访问对象的任何地方使用此函数:
application()->doStuff();
Run Code Online (Sandbox Code Playgroud)创建一个单例的东西,就像一个返回唯一实例的对象类中的静态方法,并使用此方法来访问该对象:
Application::getInstance()->doStuff();
Run Code Online (Sandbox Code Playgroud)KingCrunch&skwee:将应用程序对象作为参数传递给需要的每个函数/类
...
public function __construct(Application $app, ...){
....
Run Code Online (Sandbox Code Playgroud)如果还有其他选择,请发布.我想知道哪些选项是最有效/被认为是"最佳实践".
可能重复:
强制调用父方法
我有这样的课
abstract class theme{
abstract function header(){
// do stuff here
}
abstract function footer(){
// do stuff here
}
}
Run Code Online (Sandbox Code Playgroud)
所以所有子类都必须具有以下两种方法:
class Atheme extends theme{
function header(){
// do stuff here
echo ..
}
function footer(){
// do stuff here
echo ..
}
}
Run Code Online (Sandbox Code Playgroud)
现在当我调用其中一种方法时:
$atheme = new Atheme;
$atheme->header();
我希望子类中的header()方法自动调用父类header()方法,而不需要在子类中专门调用parent :: header().
这可能吗?
应该避免哪些jQuery方法支持内置方法/属性?
例:
$('#el').each(function(){
// this.id vs $(this).attr('id');
// this.checked vs $(this).is(':checked');
});;
Run Code Online (Sandbox Code Playgroud) 我找到了这个:
getViewport = function () {
var m = document.compatMode == 'CSS1Compat';
return {
l : window.pageXOffset || (m ? document.documentElement.scrollLeft : document.body.scrollLeft),
t : window.pageYOffset || (m ? document.documentElement.scrollTop : document.body.scrollTop),
w : window.innerWidth || (m ? document.documentElement.clientWidth : document.body.clientWidth),
h : window.innerHeight || (m ? document.documentElement.clientHeight : document.body.clientHeight)
};
};
Run Code Online (Sandbox Code Playgroud)
但是jQuery是否有内置功能呢?
在PHP文档中它说:
不要使用按引用返回来提高性能.引擎将自动对其进行自动优化.
我希望返回一个数组的引用(这是我的类的属性).PHP如何优化它,因为数组不是对象?
如果数组有10亿个条目,如果我没有通过引用传递它,我不会得到两个存储在内存中的10亿条目的数组吗?
通过有效我的意思是更少的代码(更少的CSS规则).
因为我正在将CSS文件转换为更少,我很惊讶地发现编译后的CSS文件非常小(我还没有完成:P)
<foo>
a
<bar> b </bar>
</foo>
Run Code Online (Sandbox Code Playgroud)
两者$foo->textContent并$foo->nodeValue返回a b.
我怎样才能得到a(来自节点的文本,没有来自任何子节点的文本)
php ×6
jquery ×3
class ×1
css ×1
domdocument ×1
droppable ×1
function ×1
global ×1
javascript ×1
jquery-ui ×1
less ×1
overloading ×1
parent ×1
yql ×1