这三种方法之间的性能差异(如果有的话)是什么,都用于将数组转换为另一个数组?
foreach
array_map
lambda/closure函数array_map
'静态'功能/方法为了使自己清楚,让我们看看这些例子,都做同样的事情 - 将数字数组乘以10:
$numbers = range(0, 1000);
Run Code Online (Sandbox Code Playgroud)
的foreach
$result = array();
foreach ($numbers as $number) {
$result[] = $number * 10;
}
return $result;
Run Code Online (Sandbox Code Playgroud)
用lambda映射
return array_map(function($number) {
return $number * 10;
}, $numbers);
Run Code Online (Sandbox Code Playgroud)
使用'static'函数映射,作为字符串引用传递
function tenTimes($number) {
return $number * 10;
}
return array_map('tenTimes', $numbers);
Run Code Online (Sandbox Code Playgroud)
还有其他方法吗?我将很高兴听到上述案例之间的所有差异,以及为什么应该使用其他人而不是其他人的任何输入.
我该怎么办
WHERE id != 1
Run Code Online (Sandbox Code Playgroud)
在学说?
到目前为止我有这个
$this->getDoctrine()->getRepository('MyBundle:Image')->findById(1);
Run Code Online (Sandbox Code Playgroud)
但我怎么做"不等于"?
这可能是愚蠢的,但我找不到任何参考?
谢谢
当您继承对象并希望扩展初始化代码时,有两种方法.覆盖__construct(),并实现超类构造函数调用的初始化方法.
方法1:
class foo
{
public function __construct ($arg1, $arg2, $arg3)
{
// Do initialization
}
}
class bar extends foo
{
public function __construct ($arg1, $arg2, $arg3)
{
parent::__construct ($arg1, $arg2, $arg3);
// Do subclass initialization
}
}
Run Code Online (Sandbox Code Playgroud)
方法2
class foo
{
public function init ()
{
// Dummy function
}
public function __construct ($arg1, $arg2, $arg3)
{
// Do subclass defined initialization
$this -> init ();
// Do other initialization
}
}
class bar extends foo
{
public …
Run Code Online (Sandbox Code Playgroud) 我安装了Yslow附加组件
当我在Yslow中检查我的应用程序时,我得到了Add Expires标题,我不知道
我搜索了SO中的相关问题,Google也发现这种方法合适
<?
header("Expires:".gmdate('D, d M Y H:i:s \G\M\T', time() + 3600));
header("Cache-Control: no-cache");
header("Pragma: no-cache");
ob_start();
session_cache_limiter('public');
session_start();
?>
<html>
Run Code Online (Sandbox Code Playgroud)
但它仍然表明我一样
因为我是新手,我对.htaccess了解不多
请帮助我提高应用程序性能
提前致谢
Wazzy
使用以下内容时,只有最后一个where
添加到我的查询中;
$qb = $this->getEntityManager()->createQueryBuilder();
$qb->select(array('qi'))
->from('Table:Qi', 'qi')
->where("qi.content = " . $content->getId())
->where("qi.queue = " . $child->getQueue()->getId());
Run Code Online (Sandbox Code Playgroud)
我必须这样做才能注意到这两点
$qb->select(array('qi'))
->from('Table:Qi', 'qi')
->where("qi.content = " . $content->getId() .
" AND qi.queue = " . $child->getQueue()->getId());
Run Code Online (Sandbox Code Playgroud)
这似乎不对?如何在多次where
通话时使用第一种方法?
我有一个简单的跨度
<span class="action removeAction">Remove</span>
Run Code Online (Sandbox Code Playgroud)
此跨度位于表格内,每行都有一个删除范围.
然后,当点击该跨度时,我使用AJAX调用URL.AJAX事件需要知道该行的对象的ID吗?将该ID放入点击功能的最佳方法是什么?
我以为我可以做这样的事情
<span class="action removeAction" id="1">Remove</span>
Run Code Online (Sandbox Code Playgroud)
但ID不应该以数字开头?对?然后我想我能做到
<span class="action removeAction" id="my1">Remove</span>
Run Code Online (Sandbox Code Playgroud)
然后从ID中删除"我的"部分,但这似乎只是Yuk!
下面是我的点击事件和我的AJAX事件.
<script type="text/javascript" language="text/javascript">
$(document).ready(function()
{
$(".removeAction").click(function()
{
//AJAX here that needs to know the ID
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
我相信有一个很好的方法吗?
注意:我不是在寻找
$(this).attr("id");
Run Code Online (Sandbox Code Playgroud)
我希望能够传递多条信息
谢谢.杰克.
我有一个看似简单的问题,但搜索网没有产生任何结果.
我有一张桌子
<table>
<tr>
<td colspan="3">
<img src="something.png" />
</td>
</tr>
<tr>
<td>
Hello
</td>
<td>
World
</td>
<td>
!
</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
的<tr>
所有元素均具有border-top: dotted 1px black
,这工作正常远离中央<td>
的第二元件<tr>
.
此元素具有双边框,因此显示为实线,从而colspan
解决了问题.
我已经尝试过应用border-collapse: collapse
到表中这没有用,我尝试
以第一个<td>
而不是图像的形式添加内容,但这也没有用.
任何人的想法?
我已经开始阅读向非Facebook用户展示Facebook帖子,这有一些用处,但我不敢相信从Facebook获取公共信息很难.
我想要一个feed的页面是公共的,你不需要登录就可以了.
我是否正确地假设我需要access_token来获取此信息,尝试访问该URL而不会导致OAuth错误.
所以流程应该是这样的(大规模,过于复杂):
假设用户不在Facebook上,您做什么,使用通用应用程序获取Feed?
这似乎非常复杂,除了Facebook想知道正在发生的一切之外,使用XPath做一个cURL并从公共URL中删除内容会更容易.
对此的任何帮助都会很棒.
谢谢,杰克
编辑
显示此内容的编辑不完全相同.
我有这个使用access_token,但现在它失败了,令牌已经过期,我不能再使用它从公共墙获取信息.
我尝试使用其他帖子中提到的方法来延长此令牌的到期日期,但这不起作用,并且过期没有延长 - 我们现在在这里,带有无效的令牌而且没有更进一步.
似乎必须批准OAuth请求的手动过程意味着无法以编程方式获取公共页面的提要.
我有三张桌子
岗位
ID Name
1 'Something'
2 'Something else'
3 'One more'
Run Code Online (Sandbox Code Playgroud)
评论
ID PostId ProfileID Comment
1 1 1 'Hi my name is'
2 2 2 'I like cakes'
3 3 3 'I hate cakes'
Run Code Online (Sandbox Code Playgroud)
轮廓
ID Approved
1 1
2 0
3 1
Run Code Online (Sandbox Code Playgroud)
我想计算批评评论的个人资料的评论
我可以从Post中选择数据,然后从Comment fine中加入一个计数.但是这个计数应该取决于配置文件是否被批准.
我期待的结果是
CommentCount
PostId Count
1 1
2 0
3 1
Run Code Online (Sandbox Code Playgroud) 是否有任何方法可以通过API从Google Analytics获取注释.如果可能或没有,很多搜索都没有给出任何文档或可靠答案.
有没有人这样做,或者知道我需要用来获取注释的过滤器/维度?
谢谢杰克
php ×4
doctrine-orm ×2
performance ×2
.htaccess ×1
ajax ×1
array-map ×1
border ×1
count ×1
css ×1
facebook ×1
foreach ×1
function ×1
html ×1
html-table ×1
join ×1
jquery ×1
lambda ×1
oop ×1
parameters ×1
sql ×1
subclassing ×1
symfony ×1
yslow ×1