PHP的microtime()返回如下内容:0.568762001385731177//that'smsecsec我需要这种格式的值:1385731177056876200//thisissecmsecwithoutspaceanddot目前我正在做这样的事情:$microtime=microtime();$microtime_array=explode("",$microtime);$value=$microtime_array[1].str_replace(".","",$microtime_array[0]);是否有一行代码可以实现这一点? 最佳答案
我正在尝试优化以下PHPIf/Else语句。我可以重写代码以使用case和switch,还是应该保持原样,或者怎样?代码:if(empty($_GET['id'])){include('pages/home.php');}elseif($_GET['id']==='13'){include('pages/servicestatus.php');}elseif(!empty($_GET['id'])){$rawdata=fetch_article($db->real_escape_string($_GET['id']));if(!$rawdata){$title="";$meta['ke
首先,我不是在寻找“检查您的PHP内存限制”或“您需要添加更多内存”或类似内容的答案......我在一台专用机器上,有8GB的RAMS;其中512MB是内存限制。我总是在一行中遇到内存不足错误:澄清一下:这部分代码属于Joomla!内容管理系统。functionget($id,$group,$checkTime){$data=false;$path=$this->_getFilePath($id,$group);$this->_setExpire($id,$group);if(file_exists($path)){$data=file_get_contents($path);if
在thisquestion提供了一个代码位,提问者希望通过消除变量的使用来使其更快。在我看来他找错地方了,但我绝不会知道。这是代码while($item=current($data)){echo'',$item,'',"\n";next($data);}在我看来,字符串的重新创建等等——每行不止一次,每次处理该行——都会有与之相关的成本(在速度和内存方面)。或者也许PHP处理器足够聪明,以至于在循环之前不将字符串放入变量中不会受到任何惩罚?我在任何情况下都使用变量来明确和集中化,但是:使用变量、不使用变量或其他相关的成本是否存在?(任何想回答其他问题的人类似的语言请随意。)
我有一个PHP脚本作为我的后端数据库的JSONAPI。意思是,您向它发送一个HTTP请求,例如:http://example.com/json/?a=1&b=2&c=3...它将返回一个json对象,其中包含来self的数据库的结果集。PHP对此非常有用,因为它实际上只有大约10行代码。但我也知道PHP很慢,这是一个有时每秒被调用大约40次的API,而PHP正在努力跟上。有没有一种方法可以将我的PHP脚本编译为执行速度更快的格式?我已经在使用PHP-APC,它是针对PHP和FastCGI的字节码优化。或者,有人推荐我重写脚本的语言,以便Apache仍然可以处理example.com/j
弹出数组中最后n个元素的有效方法是什么?这是一个:$arr=range(1,10);$n=2;$popped_array=array();for($i=0;$i有没有更高效的方法? 最佳答案 使用array_splice():如果您要删除最后的n元素,请使用以下函数:functionarray_pop_n(array$arr,$n){returnarray_splice($arr,0,-$n);}Demo如果你只想检索最后的n个元素,那么你可以使用下面的函数:functionarray_pop_n(array$arr,$n){arr
Drupal是否解析(和/或运行)与当前用户正在加载的内容无关的Hook?例如,假设我安装了一个模块foo并使用以下Hook激活:t('Foo!'),'pagecallback'=>'foo_display_all','description'=>'Allourfooarebelongtoyou','type'=>MENU_NORMAL_ITEM,);return$items;}functionfoo_display_all(){//About100linesofcode}//...stuff...Drupal会解析(并因此影响加载时间)未在foo_menu中列出的页面吗?换句话说,f
在处理一些遗留代码时,我遇到了大量的Try/Catch语句。Try/Catch不是他们在我的Zend认证类(class)中教授的东西,而且10年来我没有与使用它的其他PHP开发人员一起工作。与执行if语句相比,Try/Catch是否有额外的开销?是什么让它比其他选择更受欢迎或更不受欢迎? 最佳答案 我不认为它们彼此真正相关。If语句用于确定分支逻辑。Try/Catch是处理发生的错误。可以在Catchblock中处理会使程序停止的异常。 关于PHP-try/catch的开销是否高于if/
我需要生成从600k到2000k的大量随机数列表,但是列表不能有重复。我当前的“实现”如下所示:如果我保留in_array测试注释,处理时间大约为1秒,所以mt_rand调用和used数组填充相对“便宜”但是当我取消注释时in_array测试坏事发生了!(我只是在等待-已经超过10分钟-脚本终止...)所以我正在寻找重复检测方面或生成部分的替代方案(我如何生成随机数而不会有重复的风险)我愿意接受任何建议。 最佳答案 对于快速/肮脏的解决方案,使用/检查数组键是否可以提高您的速度?$used=array();for($i=0;$i
我读到在数据库中存储IP地址的最佳方法是创建一个UnsignedInt(10)字段。如何使用PHP转换IP地址?我试过使用$this->ip=long2ip($_SERVER['REMOTE_ADDR']);但这似乎行不通。我找到了使用将其转换回IP地址的方法$this->ip=sprintf("%u",ip2long($result['ip']));最初如何转换IP地址?我应该为此使用PHP吗?或者集成到MySQL查询中会更好吗? 最佳答案 long2ip将整数转换为IP格式和ip2long做相反的事情。于是使用ip2long将$