PHP内存使用情况如何获取_php技巧_脚本之家

PHP里有非常丰富的停放函数,比比较多咱们都用过,但依然有众多的函数我们大多数人都不熟练,可它们却非常的有用。那篇随笔里,我列举了部分鲜为人知但会让您眼前一亮的PHP函数。

PHP内置函数memory_get_usage(State of Qatar能重临当前分配给PHP脚本的内部存款和储蓄器量,单位是字节。在WEB实际开支中,那几个函数特别有用,我们得以选择它来调解PHP代码质量。memory_get_usage(卡塔尔(قطر‎函数再次来到内部存款和储蓄器使用量,memory_get_peak_usage(卡塔尔国函数重回内部存款和储蓄器使用峰值,getrusage(State of Qatar重回CUP使用情状。但有点请小心,在此些函数供给在Linux上运营。下边大家来看叁个实例:

levenshtein()

echo '开始内存:'.memory_get_usage(), ''; $tmp = str_repeat; echo '运行后内存:'.memory_get_usage; echo '回到正常内存:'.memory_get_usage(); 

您有未有经历过须求知道四个单词有多大的比不上的时候,那么些函数即是来帮您清除那些难点的。它能比较出几个字符串的例外水平。

输出结果:起头内部存款和储蓄器:147296 运转后内部存款和储蓄器:152456 回到平常内存:147296
例子中,我们利用str_repeat(卡塔尔将字符串“hello”重复了1000遍,最后来对待前后消耗的内部存款和储蓄器大小。由地点的例证能够见见,要想减削内部存款和储蓄器的攻陷,能够应用unset(卡塔尔函数把不再需求动用的变量删除。形似还会有mysql_free_result(State of Qatar函数,当大家不再要求查询数据得到的结果集时,能够使用释放查询占用的内存。函数memory_get_usage(卡塔尔国还足以有个参数,$real_usage,其值为布尔值。要是设置为
TRUE,获取系统一分配配的真实内部存款和储蓄器尺寸。借使未设置只怕设置为 FALSE,将是
emalloc(卡塔尔国 报告采取的内部存款和储蓄器量。在实质上WEB开垦中,能够用PHP
memory_get_usage(卡塔尔(قطر‎比较各样艺术占用内部存款和储蓄器的高低,来筛选使用哪类占领内部存储器小的办法。函数memory_get_usage。

用法:

上边那些自定义函数将字节数转变来MB更易于阅读:

<?php 
$str1 = "carrot"; 
$str2 = "carrrott"; 
echo levenshtein($str1, $str2); //Outputs 2 

?>
function memory_usage() { $memory = ( ! function_exists ? '0' : round/1024/1024, 2).'MB'; return $memory; } 

get_defined_vars()

常用的调养检查评定PHP代码质量的不二等秘书籍有:memory_get_usage能够分析内部存款和储蓄器占用空间。用microtime函数就足以深入分析程序实行时间。

这是二个在debug调节和测量试验时那些有效的函数。那一个函数重返叁个多维数组,里面包涵了有着定义过的变量。

通过那篇文章大家领会php是怎么着收获内部存储器使用状态了呢,希望那篇文章能够对大家的求学抱有利于。

用法:

<?php 
print_r(get_defined_vars()); 
?>

php_check_syntax()

以此函数非常的有用,可以用来检查PHP的语法是或不是正确。出于本事上的由来,从PHP
5.05领头,那一个函数被剔除了。

用法:

<?php 
$error_message = ""; 
$filename = "./php_script.php"; 
if(!php_check_syntax($filename, &$error_message)) { 
   echo "Errors were found in the file $filename: $error_message"; 
} else { 
   echo "The file $filename contained no syntax errors"; 
} 
?>

ignore_user_abort()

其一函数用来回绝浏览器端顾客终止实行脚本的伏乞。平常境况下顾客端的退出会形成服务器端脚本甘休运维。

用法:

<?php 
ignore_user_abort(); 
?>

highlight_string()

当你想把PHP代码突显到页面上时,highlight_string()函数就展览会示十二分管用。那些函数会把你提供的PHP代码用内置的PHP语法优秀展示定义的水彩高亮展现。那些函数有八个参数,第二个参数是七个字符串,表示这几个字符串供给被出色展现。第二个参数若是设置成TRUE,那个函数就能够把高亮后的代码当成再次来到值再次回到。

用法

<?php 
highlight_string(' <?php phpinfo(); ?>'); 
?>

highlight_file

那是八个那多少个有效的PHP函数,它能回到钦赐的PHP文件,并依照语塞尔维亚语义用高亮颜色卓绝突显文件内容。当中的隆起呈现的代码都以用HTML标识处理过的。

用法:

<?php 
highlight_file("php_script.php"); 
?>

php_strip_whitespace

这几个函数也眼前面包车型地铁show_source()函数相通,但它会去除文件里的注释和空格符。

用法:

<?php 
echo php_strip_whitespace("php_script.php"); 
?>

get_browser

以此函数会读取browscap.ini文件,重临浏览器包容消息。

用法:

<?php 
echo $_SERVER['HTTP_USER_AGENT']; 
$browser = get_browser(); 
print_r($browser); 
?>

memory_get_usage(),memory_get_peak_usage(),getrusage()

这一个函数用来赢得内部存款和储蓄器和CPU使用情形,memory_get_usage()函数再次来到内部存款和储蓄器使用量,memory_get_peak_usage()函数重返内存使用峰值,getrusage(卡塔尔再次来到CUP使用状态,在调度PHP代码质量时,那么些函数会给您提供一些有用音信。但有一点点请小心,在这里些函数中Window上无效。

用法:

<?php 
echo "Initial: ".memory_get_usage()." bytes n"; 
echo "Peak: ".memory_get_peak_usage()." bytes n"; 
$data = getrusage(); 
echo "User time: ". 
    ($data['ru_utime.tv_sec'] + 
    $data['ru_utime.tv_usec'] / 1000000); 
echo "System time: ". 
    ($data['ru_stime.tv_sec'] + 
    $data['ru_stime.tv_usec'] / 1000000); 

?>

gzcompress(), gzuncompress()

那五个函数用来压缩和平解决压字符串数据。它们的压缩率能落得四分之二左右。其它的函数 gzencode(卡塔尔(قطر‎ 和 gzdecode(卡塔尔(قطر‎也能达到规定的标准相像结果,但使用了不相同的压缩算法。

用法:

<?php 
$string = 
"Lorem ipsum dolor sit amet, consectetur 
adipiscing elit. Nunc ut elit id mi ultricies 
adipiscing. Nulla facilisi. Praesent pulvinar, 
sapien vel feugiat vestibulum, nulla dui pretium orci, 
non ultricies elit lacus quis ante. Lorem ipsum dolor 
sit amet, consectetur adipiscing elit. Aliquam 
pretium ullamcorper urna quis iaculis. Etiam ac massa 
sed turpis tempor luctus. Curabitur sed nibh eu elit 
mollis congue. Praesent ipsum diam, consectetur vitae 
ornare a, aliquam a nunc. In id magna pellentesque 
tellus posuere adipiscing. Sed non mi metus, at lacinia 
augue. Sed magna nisi, ornare in mollis in, mollis 
sed nunc. Etiam at justo in leo congue mollis. 
Nullam in neque eget metus hendrerit scelerisque 
eu non enim. Ut malesuada lacus eu nulla bibendum 
id euismod urna sodales. "; 

$compressed = gzcompress($string); 
$original = gzuncompress($compressed); 

?>

您是或不是也想开了还应该有别的很有用的函数?请在胡言乱语里分享出去!

发表评论

电子邮件地址不会被公开。 必填项已用*标注