php面试

(1)引用变量

变量赋值

<?php
$a = range(0,200);
var_dump(memory_get_usage());
$b = $a;
//cow copy on write 写的时候才会进行拷贝
var_dump(memory_get_usage());
$b = range(0,500);
var_dump(memory_get_usage());
//赋值时两个变量相同,当对其中一个变量进行修改
//才会另开辟一块空间来进行存储,分别指向各自的地址
引用变量1.PNG

变量引用

<?php
$a = range(0,200);
var_dump(memory_get_usage());
$b = &$a;
//cow copy on write 写的时候才会进行拷贝
var_dump(memory_get_usage());
$b = range(0,200);
var_dump(memory_get_usage());
//$b取得的是$a的地址的引用,两个变量指向相同的地址,只会开辟一块空间
引用变量2.PNG

(2)reverse函数重写

PHP中没有字符串与数组的length属性

function str_reverse($str){
    $result = '';
    
    for($i = 0;true;$i++){
        if(!isset($str[$i])){
            break;
        }
    }
    //获取字符串的长度

    for($j = $i - 1;$j>=0;$j--){
        $result .= $str[$j];
    }
    //反向拼接字符串
    return $result;
}
var_dump(str_reverse('weidapao'));
(3)得到字符串与数组的长度

数组

$arr = array(6,8,9,7,15,5);
print_r(count($arr));  //6
print_r(sizeof($arr)); //6

字符串

$str = "abandon";
print_r(strlen($str)); //7
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容