PHP7.1方括号数组符号多值复制及指定键值赋值用法的示例分析
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章给大家介绍PHP7.1方括号数组符号多值复制及指定键值赋值用法的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。PHPer 们可能都知道 list 的用法,简单来说
千家信息网最后更新 2025年02月04日PHP7.1方括号数组符号多值复制及指定键值赋值用法的示例分析
这篇文章给大家介绍PHP7.1方括号数组符号多值复制及指定键值赋值用法的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
PHPer 们可能都知道 list 的用法,简单来说就是可以在一个表达试里通过数组对多个变量赋值:
$values = array('value1', 'value2');$list($v1, $v2) = $values;
感觉是不是很方便呢?在 PHP 7.1 中,还能更省事儿:
[$v1, $v2] = ['foo', 'bar'];
这还不是最给力的,在 PHP 7.1 里我们还可以指定键值来赋值,从而不用关心数组元素的顺序:
list('v1' => $value1, 'v2' => $value2) = array('v1' => 'foo', 'v2' => 'bar', ...);// or['v1' => $value1, 'v2' => $value2] = ['v1' => 'foo', 'v2' => 'bar', ...];
其实在 PHP 5 的年代,list 就有一个很不错的用法可能大家都不熟悉:
$arr = [ ['x', 'y'], ['x1', 'y2'],];foreach ($arr as list($x, $y)) { echo $x, ' ', $y, PHP_EOL;}
到了 PHP 7.1,因为可以指定键值赋值,这种用法将更加的灵活,估计也更加常用:
$arr = [ ['x' => 1, 'y' => '2'], ['x' => 2, 'y' => '4'],];foreach ($arr as ['x' => $x, 'y' => $y)) { echo $x, ' ', $y, PHP_EOL;}
再看看一个官网的例子,是不是感觉好像春风拂面一样清爽:
class ElePHPant{ private $name, $colour, $age, $cuteness; public function __construct(array $attributes) { // $this->name = $attributes['name']; // 以前 // 现在 [ "name" => $this->name, "colour" => $this->colour, "age" => $this->age, "cuteness" => $this->cuteness ] = $attributes; } // ...}
值得一提的是:此种赋值方式,是可以嵌套使用的!
[[$a, $b], [$c, $d]] = [[1, 2], [3, 4]];
最后,在 PHP 7.1 的提案里有一个展望,也非常值得期待:
class ElePHPant{ private $name, $colour, $age, $cuteness; public function __construct(["name" => string $name, "colour" => \Colour $colour, "age" => int $age, "cuteness" => float $cuteness]) { $this->name = $name; $this->colour = $colour; $this->age = $age; $this->cuteness = $cuteness; } // ...}
如果 PHP 推出此语法,那么参数列表将不再关心参数顺序,PHP 的小伙伴将不再羡慕 Ruby 的小伙伴啦!
关于PHP7.1方括号数组符号多值复制及指定键值赋值用法的示例分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
数组
小伙
小伙伴
方括号
示例
符号
分析
不错
内容
参数
感觉
更多
顺序
帮助
清爽
值得一提
不用
事儿
例子
元素
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
考研复试网络安全技术
平顶山超级互联网科技有限公司
上海通信网络技术公司
郑州互动安全文化展厅软件开发
网络安全简笔怎么画
云平台软件开发技术
中国工业互联网网络安全
数据库数据类型不一样怎么解决
什么是服务器的质量
唐山顶新网络技术有限公司
软件开发处理器要几核
如何修改sq数据库sa密码
浪潮服务器装2008系统
华为服务器900
tbc怎么看自己服务器排名
noip数据库结构集合
ntp授时服务器有什么用
域服务器策略
交警大队做好网络安全工作
知网和万方数据库比较评价
显卡不能安装web服务器
网络技术应用题大全
江苏海航软件开发合同
客户端向服务器发送http请求
网络安全监察大队工作总结
网络安全未成年人健康上网
服务器泄漏风险
网络安全信息可以从哪些来源获取
廊坊捷讯网络技术
网络安全人员培训机制