PHP8创建数组-PHP8知识详解

news2024/12/26 9:30:40

在php 8中,您可以使用以下方法创建数组:使用数组字面量创建数组、使用 array() 函数创建数组、通过赋值的方式创建数组、使用array_push()函数将元素添加到数组末尾、使用range()函数创建数值数组、使用compact()函数创建带有变量名的数组、使用array_fill()创建数组、使用array_fill_keys()函数创建数组。

Image

1、使用数组字面量创建数组

使用数组字面量创建数组,这个是最简单的创建方法了,语法如下:

$名称 = []

使用数组字面量创建数组,参考代码:

<?php
$a = ['php', 'mysql', 'html'];
echo "<pre>";
print_r($a);
?>

以上代码在PHP8中的运行结果为:

Array
(
    [0] => php
    [1] => mysql
    [2] => html
)

2、使用 array() 函数创建数组

使用 array() 函数创建一个新的数组,该数组接受任意数量用逗号分隔的键(key)=>值(value)对,语法格式如下:

array(key => value,……)

使用 array() 函数创建数组,参考代码:

<?php
$array = array('html','css','javascript','php','mysql');
echo "<pre>";
print_r($array);
?>

以上代码在PHP8中,运行的结果为:

Array
(
    [0] => html
    [1] => css
    [2] => javascript
    [3] => php
    [4] => mysql
)

3、通过赋值的方式创建数组

我们可以通过赋值的方式直接创建数组,语法格式如下:

$名字[索引值] = 值;

其中索引值(下标)可以是一个字符串或一个整数,并且下标需要使用[ ]包裹。

声明一个索引数组时,如果索引值是递增的,我们也可以不在方括号内指定具体的索引值,这时索引值默认从 0 开始依次增加。

通过赋值的方式创建数组,参考代码如下:

<?php
$s[] = 'html';
$s[] = 'css';
$s[] = 'javascript';
$s[] = 'php';
$s[] = 'mysql';
echo "<pre>";
print_r($s);
?>

以上代码在PHP8中的运行结果为:

Array
(
    [0] => html
    [1] => css
    [2] => javascript
    [3] => php
    [4] => mysql
)

4、使用array_push()函数将元素添加到数组末尾

参考代码:

<?php
$array = [];  
array_push($array, "html");  
array_push($array, "css");  
array_push($array, "php");  
// 可以继续添加更多元素
echo "<pre>";
print_r($array);
?>

在PHP8中的运行结果为:

Array
(
    [0] => html
    [1] => css
    [2] => php
)

5、使用range()函数创建数值数组

使用range()函数创建数值数组,示范代码:

<?php
$n = range(1, 5);
echo "<pre>";
print_r($n);
?>

以上代码在PHP8中的运行结果为:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

6、使用compact()函数创建带有变量名的数组:

<?php
$name = '张三';
$age = 30;
$person = compact('name', 'age');
echo "<pre>";
print_r($person);
?>

以上代码在PHP8中的运行结果为:

Array
(
    [name] => 张三
    [age] => 30
)

7、使用array_fill()创建数组

使用array_fill():会以填充键值的方式来创建一个新数组,语法格式:

array_fill($index, $number, $value)

参考代码:

<?php
$a=array_fill(0,5,"php");
echo "<pre>";
var_dump($a);
?>

函数接受3个不可省略的参数$index(起始索引)、$number(填充元素数量)和$value(用于填充的键值)。

其中,$index参数支持负值,数组索引有以下三种取值情况:

如果为正数,则数组索引从$index值开始,到$index+$number-1值结束。例$index为2,$number为5,则数组索引为:2、3、4、5/6。

如果为0,则数组索引从0开始,到$number-1值结束。例$index为0,$number为5,则数组索引为:0、1、2、3、4。

如果为负数,则数组索引由 $index,0,1,2, ...,$number-2 组成。例$index为-2,$number为5,则数组索引为:-2、-1、0、1、2。

在上例中,array_fill(0,5,"php")的$index为0(索引从0开始)、$number为5(数组有五个元素),因此数组索引为:0、1、2、3、4;而$value为php,则这四个元素的键值都为php。

以上代码在PHP8中的运行结果为:

array(5) {
  [0]=>
  string(3) "php"
  [1]=>
  string(3) "php"
  [2]=>
  string(3) "php"
  [3]=>
  string(3) "php"
  [4]=>
  string(3) "php"
}

8、使用array_fill_keys()函数创建数组

array_fill_keys():会以填充键名和键值的方式来创建一个新数组

<?php
$keys=array("a","b","c","d");
$a=array_fill_keys($keys,"php");
echo "<pre>";
var_dump($a);
?>

array_fill_keys($keys,$value)函数接受2个不可省略的参数$keys(包含填充键名的一个数组)、$value(填充键值)。

简单来说,array_fill_keys()函数会使用$keys数组中元素作为键名,$value作为值来填充出一个新数组。

从上面的代码示例可以看出:新数组有四个元素,键名分别为“a”、“b”、“c”、“d”;这四个元素的键值都为“php”,因此在PHP8中输出结果为:

array(4) {
  ["a"]=>
  string(3) "php"
  ["b"]=>
  string(3) "php"
  ["c"]=>
  string(3) "php"
  ["d"]=>
  string(3) "php"
}

好了,今天讲解的使用数组字面量创建数组、使用 array() 函数创建数组、通过赋值的方式创建数组、使用array_push()函数将元素添加到数组末尾、使用range()函数创建数值数组、使用compact()函数创建带有变量名的数组、使用array_fill()创建数组、使用array_fill_keys()函数创建数组就讲解完毕了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/970626.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ | 程序暂停功能

C | 程序暂停功能 文章目录 C | 程序暂停功能初衷rosbag 播包暂停功能源码 识别键盘输入&#xff08;需输入Enter&#xff09;识别键盘输入&#xff08;无需输入Enter&#xff09;opencv waitKey函数kill 信号包装成空格命令 Reference[C/C 获取键盘事件](https://www.runoob.c…

电动汽车电机驱动系统的组成和作用

1.电机驱动系统的作用与组成电动汽车电机驱动系统是新能源汽车的核心技术之一&#xff0c;它的主要任务是按驾驶员的驾驶意图&#xff0c;将动力电池的化学能高效地转化为机械能&#xff0c;经过变速器、驱动轴等机构驱动车轮。电动机驱动系统主要有电动机、功率器件和控制系统…

旅游APP外包开发注意事项

旅游类APP通常具有多种功能&#xff0c;以提供给用户更好的旅行体验。以下分享常见的旅游类APP功能以及在开发和使用这些APP时需要注意的问题&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 常见功能…

C++智能指针之shared_ptr(保姆级教学)

目录 C智能指针之shared_ptr 本文涉及所有程序 工作原理 使用方法 手动初始化 std::make_shared函数&#xff08;C14提出&#xff09; 构造方法初始化 make_shared初始化 使用实例 shared_ptr常规操作 use_count(); unique(); reset(); get(); 指定删除器 移动…

确保浏览安全:使用SSH实施加密SOCKS5

在互联网上保护隐私和安全至关重要。使用SSH&#xff08;Secure Shell&#xff09;创建加密的SOCKS5代理是一种简单且有效的方法&#xff0c;可以确保您的网络流量在传输过程中受到保护。本文将向您介绍如何使用SSH实施加密SOCKS5&#xff0c;以提高您的浏览安全。 1、准备工作…

使用perf_analyzer和model-analyzer测试tritonserver的模型性能超详细完整版

导读 当我们在使用tritonserver部署模型之后&#xff0c;通常需要测试一下模型的服务QPS的能力&#xff0c;也就是1s我们的模型能处理多少的请求&#xff0c;也被称为吞吐量。 测试tritonserver模型服务的QPS通常有两种方法&#xff0c;一种是使用perf_analyzer 来测试&#…

递归/回溯/动规

1 动规-打家劫舍一 你是一个经验丰富的小偷&#xff0c;准备偷沿街的一排房间&#xff0c;每个房间都存有一定的现金&#xff0c;为了防止被发现&#xff0c;你不能偷相邻的两家&#xff0c;即&#xff0c;如果偷了第一家&#xff0c;就不能再偷第二家&#xff1b;如果偷了第二…

计算机竞赛 基于深度学习的中文情感分类 - 卷积神经网络 情感分类 情感分析 情感识别 评论情感分类

文章目录 1 前言2 情感文本分类2.1 参考论文2.2 输入层2.3 第一层卷积层&#xff1a;2.4 池化层&#xff1a;2.5 全连接softmax层&#xff1a;2.6 训练方案 3 实现3.1 sentence部分3.2 filters部分3.3 featuremaps部分3.4 1max部分3.5 concat1max部分3.6 关键代码 4 实现效果4.…

Dubbo2.0

前置 衡量网站性能指标&#xff1a; 响应时间&#xff1a;一次请求花费时间并发数&#xff1a;同时处理请求数 并发连接数&#xff1a;每秒建立总TCP数量请求数&#xff1a;QPS一秒请求数并发用户数&#xff1a;单位时间用户 吞吐量&#xff1a;单位时间处理请求数 QPS&#…

Web前端自动化测试Cypress实践总结

本文主要首先主要介绍了什么是自动化测试&#xff0c;接着对常用的自动化测试框架进行了对比分析&#xff0c;最后&#xff0c;介绍了如果将自动化测试框架Cypress运用在项目中。 一、自动化测试概述 为了保障软件质量&#xff0c;并减少重复性的测试工作&#xff0c;自动化测…

GaussDB数据库SQL系列-层次递归查询

目录 一、前言 二、GuassDB数据库层次递归查询概念 三、GaussDB数据库层次递归查询实验示例 1、创建实验表 2、sys_connect_by_path(col, separator) 3、connect_by_root(col) 4、WITH RECURSIVE 四、递归查询的优缺点 1、优点 2、缺点 五、总结 一、前言 层次递归…

中使用pack局管理器:管理器布置小部件

一、说明 在本教程中&#xff0c;我们将了解如何制作登录 UI。今天的教程将重点介绍如何使用 Tkinter 的pack布局管理器。 二、设计用户界面 什么是布局管理器&#xff1f;创建图形界面时&#xff0c;窗口中的小部件必须具有相对于彼此排列的方式。例如&#xff0c;可以使用微件…

Yolov5的tensorRT加速(python)

地址&#xff1a;https://github.com/wang-xinyu/tensorrtx/tree/master/yolov5 下载yolov5代码 方法一&#xff1a;使用torch2trt 安装torch2trt与tensorRT 参考博客&#xff1a;https://blog.csdn.net/dou3516/article/details/124538557 先从github拉取torch2trt源码 ht…

【C++ 二叉搜索树】

目录 1.什么是二叉搜索树2.构建二叉搜索树2.1首先搭建树的框架2.2搭建搜索树的框架 3.二叉搜索树的插入3.1非递归式插入3.2递归式插入 4.二叉搜索树的查找4.1非递归查找4.2递归查找 5.二叉搜索树的删除5.1非递归删除5.2递归删除 6.整个代码实现 1.什么是二叉搜索树 简单来讲就…

WebDAV之π-Disk派盘 + 小书匠

小书匠是一款功能丰富,强大的知识管理工具。全平台覆盖,离线数据存储,自定义数据服务器,所见即所得的 markdown 编辑体验。 小书匠提供了多种实用的编辑模式,例如:栏编辑、双栏编辑、三栏编辑、全屏写作、全屏阅读等。并且该软件还提供了许多有用的扩展语法,比如Latex公…

【前端demo】CSVJSON转换器 原生实现:CSV转换为JSON,JSON转换为CSV

文章目录 效果过程textareaTooltip提示工具按钮的min-width判断输入是否是CSV或JSONJSON与CSV样例JSON转为CSVCSV转为JSON不足之处 代码HTMLCSSJS 其他demo 效果 效果预览&#xff1a;CSV&JSON Converter (codepen.io) 参照的预览&#xff1a;JSV Converter(gpaiva00.git…

地毯16 CFR 1630/1631安全防火性易燃性测试

地毯的16 CFR 1630/1631安全防火性易燃性测试是一项重要的产品检测认证标准。该测试旨在评估地毯材料的防火性能&#xff0c;以确保其在使用过程中不会引发火灾或加剧火势。测试过程包括对地毯样品进行燃烧测试和燃烧后的评估。 根据16 CFR 1630标准&#xff0c;地毯样品将被暴…

检漏仪和高真空度控制技术在热管漏率和内部真空度测量中的应用

摘要&#xff1a;大量MEMS真空密封件具有小体积、高真空和无外接通气接口的特点&#xff0c;现有的各种检漏技术无法对其进行无损形式的漏率和内部真空度测量。基于压差法和高真空度恒定控制技术&#xff0c;本文提出了解决方案。方案的具体内容是将被测封装器件放置在一个比器…

elementui表格自定义表头的两种方法

表格自定义表头的方式 多选框表头换文字 请查看上篇博客&#xff1a;http://t.csdn.cn/69De2 文字换按钮 render-header render-header方法详情 Table-column Attributes 参数说明类型可选值默认值render-header列标题 Label 区域渲染使用的 FunctionFunction(h, { column, $in…

恒运资本:北向资金流出一定会跌吗?股票涨跌与什么有关?

北向资金被认为是A股商场的风向标&#xff0c;它的动向往往会影响投资者的心情。那么北向资金流出一定会跌吗&#xff1f;股票涨跌与什么有关&#xff1f;恒运资本也为大家准备了相关内容&#xff0c;以供参阅。 北向资金流出一定会跌吗&#xff1f; 北向资金流出并不一定意味…