草庐IT

php - 有没有办法用 xdebug 只记录比 X 慢的执行?

我希望xdebug仅跟踪超过X毫秒或超过YKBRAM的“跳跃”,例如,每次执行时间超过100毫秒或内存使用增加超过100KB。这会让我忽略成千上万条我不需要看到的跟踪线,并且会让优化变得更容易——因为在ZF2中,臃肿的框架只需要1秒就可以启动我们企业项目上的composerautoloader,结果在数千行中我真的没有用。沿线的某个地方,我确实发现执行时间有更大的跳跃,但在长时间滚动之后并没有。是否有一个默认选项可以禁用“比X快”执行的日志记录,或者如果没有,您是否知道可以仅grep出较慢的执行的辅助shell/python脚本?为了澄清,我说的是通过在我的应用程序中运行xdebug_

php - 有没有办法将数组转换为类属性?

有一种方法可以获取类属性并使用(array)转换来转换它。$user=(array)get_object_vars($userObject)但我想知道,我没有找到任何将数组属性转换为类属性的直接方法。假设我有具有以下实现的用户类:classUser{private$id=0;private$fname='';private$lname='';private$username='';}我有以下数组:$user=array('id'=>2,'fname'=>'FirstName','lname'=>'LastName','username'=>'UserName');我正在寻找类型转换,就

php - 有没有办法告诉 PHPStorm 隐藏方法/函数/变量/等

我正在寻找一种方法让PHPStorm隐藏一些代码完成的方法。我尝试用@accessprivate注释DocBlocks,但这并没有将它们隐藏起来。除了编写/生成具有有限接口(interface)的stub文件并在我的项目中引用它之外,是否有任何方法可以隐藏私有(private)API?例如:假设图书馆里有这个:我的图书馆用户正在输入:$oFoo->[CTRL+SPACE]//invokingcodecompletion...是否有可能(如果是的话我该怎么做)让我的用户永远不会看到_doBar?我尝试过的不同注释似乎都没有达到预期的效果。附言我正在使用PHPStorm4.0.3补充:在这

php - 有没有办法将 --compressed 传递给 PHP 的 curl_setopt()?

使用curl时,我发现我所访问的服务器的行为有所不同,这取决于我是否将--compressed作为参数传递。我已经将Accept-Encodingheader设置为gzip、deflate、sdch:curl_setopt($ch,CURLOPT_ENCODING,'gzip,deflate,sdch');我还尝试将编码设置为空字符串:''因为这应该意味着支持任何类型的压缩。但是,如果我通过命令行传递--compressed,我得到的内容类型是:gzip。如果我不传入--compressed,我得到的内容类型是text/html;charset=UTF-8使用PHP的curl_exec

javascript - 有没有办法在没有 javascript 的情况下在移动应用程序上有一个完整的站点按钮?

我目前通过htaccess重定向到一个移动站点,如下所示:RewriteEngineOnRewriteCond%{HTTP_USER_AGENT}"android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|operamobile|palmos|webos"[NC]RewriteRule^$http://m.example.com/[L,R=302]我的移动版本是否有一个完整的站点按钮,如果单击它会忽略此规则?我不想使用javascript进行重定向并检查完整站点...虽然我同意php这样做的想法,但我知道htaccess

php - 有没有用于 PHP 的非 Zend Google 联系人库?

我需要它,因为我已经在使用Agavi框架,如果我也尝试集成Zend,事情会变得一团糟。是否有适用于Google通讯录的facebook-phpSDK的等价物? 最佳答案 不确定为什么您认为它会变得困惑,因为ZendFramework组件(按设计)非常松散耦合且具有唯一的命名空间。如果愿意,您可以单独使用Zend_Gdata,它不会干扰Agavi正在做的任何事情。 关于php-有没有用于PHP的非ZendGoogle联系人库?,我们在StackOverflow上找到一个类似的问题:

php - 有没有 'too abstract' 这样的东西?

我想知道我是否试图以RAD的名义在这里抽象太多。这里有一个例子——假设我有一个包含3个模型(主模型、映射器模型和数据库模型)的数据库表。每一个都扩展了一个抽象模型、映射器和数据库表模型。这个设置工作得很好。大部分操作实际上都在抽象模型中。但是,现在我想抽象得更多。我会走远吗?我已经抽象了基本的CRUD操作,现在我正在考虑抽象更高级的操作。这方面的一个例子是获取一些相关的模型。目前我会这样做:$modelOne->modelTwo();其中modelTwo被显式定义。我的想法是然后使用像injectModel('modelTwo')这样的抽象方法或魔术方法。我总是可以建立相关规则来确保我

php - 有没有办法在不先创建我自己的函数的情况下将参数发送到回调函数?

我有一组值,我想通过htmlspecialchars运行这些值,但带有如下参数:$param=htmlspecialchars($param,ENT_QUOTES);问题是,我有一组值,我想在这些值上运行htmlspecialchars:$array=array_map('htmlspecialchars',$array);我想知道是否有办法将ENT_QUOTES传递到array_map回调中?我总是可以使用我自己的函数,它使用htmlspecialchars,但如果已经有办法做到这一点就好了。在下面的答案之后,这是我的最终结果:$array=array_map('htmlspecia

php - 有没有办法将 php 对象保存在内存中以避免磁盘读取和写入?

所以我有一个从磁盘gnugpg读取文件的对象,它似乎总是在主目录中创建一个gnugpgkey环。我想避免每次从apache调用php脚本时都必须加载此对象。有没有办法让php对象留在内存中? 最佳答案 如果它是一个不占用太多内存且可序列化的小对象,您可以将其存储在session中:functiongetSessionObject($objectName,$params){$sessionObjectSerialized=getSessionVariable($objectName,FALSE);if($sessionObjectSe

php - 有没有PHP面向对象编程实战教程?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我学习PHP有一段时间了,也阅读了一些OOP教程。我尝试使用OOPPHP开始我自己的网站,但我迷路了。我不确定在实际项目中该做什么。我想也许我需要一些实践教程,这是在谈论真实的项目。我尝试阅读一些PHP框架(如CodeIgniter)的代码,但我无法全部理解。有没有关于真实项目的教程,并且有完整的解释?