在PHP以及其他程序语言程序设计中,经常会用到数组的创建,在前端开发中,js的数组创建可以由[]和new Array()直接创建和赋值。然而PHP创建数组的方法有哪些呢?在查阅资料并且网上收集整理总结了下:

1. 使用array创建数组,是最常见和便捷的一个方式 :

$arr = array('a','b','c');
$arr[] = 'a' ; $arr[] = 'b' ; $arr[] = 'c';
$arr = array('name' => '关羽' , 'age' => 23 , 'sex' => '男');

  

2. 有时候需要创建一个长度为len的一个随机数组,所以就可以用range():
 
   定义:array range(first,second,step)  //first:元素最小值   second:元素最大值  step:元素步长(要增加的量)

$number = range(0,5);
print_r ($number); //打印:Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 [4] => 4 [5] => 5 ) $number = range(0,50,10);
print_r ($number); //打印:Array ( [0] => 0 [1] => 10 [2] => 20 [3] => 30 [4] => 40 [5] => 50 ) $letter = range("a","d");
print_r ($letter); //打印:Array ( [0] => a [1] => b [2] => c [3] => d )

  3.当然,在某些特定需求下,需要把某些变量存入数组,这些变量的变量名转换成键名,变量值转换成键值(前提:该变量存在):

$firstname = "Peter";
$lastname = "Griffin";
$age = "38";
$result = compact("firstname", "lastname", "age");
print_r($result); //打印: Array ( [firstname] => Peter [lastname] => Griffin [age] => 38 ) $firstname = "Peter";
$lastname = "Griffin";
$age = "38";
$name = array("firstname", "lastname");
$result = compact($name, "location", "age");
print_r($result); //打印:Array ( [firstname] => Peter [lastname] => Griffin [age] => 38 )
//由于$location变量不存在,所以存入不了数组

  

4. 将两个数组合并为一个新的数组,第一个数组的值是新数组的键名,第二个数组里面的值是新数组的键值:
 
定义:array_combine()函数可以将两个数组合并成一个新数组,其中的一个数组是键名,另一个数组的值为键值。

$a1=array("a","b","c","d");
$a2=array("Cat","Dog","Horse","Cow");
print_r(array_combine($a1,$a2)); //打印:Array ( [a] => Cat [b] => Dog [c] => Horse [d] => Cow )

  

5. 创建键值一样具有固定长度的数组:
 
定义:array_fill(start,number,value)  //start:起始索引 number:值的个数 value:数组值

$a=array_fill(2,3,"Dog");
print_r($a); //打印:Array ( [2] => Dog [3] => Dog [4] => Dog )

  

5种PHP创建数组的方式的更多相关文章

  1. Java 创建数组的方式, 以及各种类型数组元素的默认值

    ①创建数组的方式3种 ①第1种方法 public class MyTest { public static void main(String[] args){ //method 1 int[] arr ...

  2. JavaScript中创建数组的方式!

    JavaScript中创建数组的方式! 利用数组字面量 // 1 直接量 console.log(Array.prototype); var arr = [1, 2, 4, 87432]; // 注意 ...

  3. JS几种数组遍历方式以及性能分析对比

    前言 这一篇与上一篇 JS几种变量交换方式以及性能分析对比 属于同一个系列,本文继续分析JS中几种常用的数组遍历方式以及各自的性能对比 起由 在上一次分析了JS几种常用变量交换方式以及各自性能后,觉得 ...

  4. 09 Python两种创建类的方式

    第一种比较普遍的方式: class Work(): def __init__(self,name): self.name = name w = Work('well woker') 这样就简单创建了一 ...

  5. js中创建数组,并往数组里添加元素

    数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长 ...

  6. sometimes-ever js中创建数组,并往数组里添加元素

    数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长 ...

  7. C++中函数访问数组的方式

    在书写C++代码时,往往为了令代码更加简洁高效.提高代码可读性,会对定义的函数有一些特殊的要求:比如不传递不必要的参数,以此来让函数的参数列表尽可能简短. 当一个函数需要访问一个数组元素时,出于上述原 ...

  8. JS几种数组遍历方式总结

    JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代 ...

  9. JavaScript DOM三种创建元素的方式

    三种创建元素的方式: document.write() element.innerHTML document.createElement() 初始HTML内容: <button>btn&l ...

随机推荐

  1. SIFT特征点检测学习一(转载)

    新手上路,先转载学习tornadomeet的博客:http://www.cnblogs.com/tornadomeet/archive/2012/08/16/2643168.html 特征点检测学习_ ...

  2. 结尾0的个数(问题来源PythonTip)

    给你一个正整数列表 L, 输出L内所有数字的乘积末尾0的个数.(提示:不要直接相乘,数字很多,相乘得到的结果可能会很大). 例如: L=[2,8,3,50], 则输出:2 利用2 和 5 思路: 算各 ...

  3. C++ 栈和队列的使用

    要使用标准库的栈和队列,首先得添加头文件 #include <stack> #include<queue> 定义栈: stack<int>  curStack; 定 ...

  4. 1032. Sharing (25)

    To store English words, one method is to use linked lists and store a word letter by letter. To save ...

  5. 文件上传---form表单,ajax,jquery,以及iframe无刷新上传 (processData,contentType讲解)

    服务端程序: import tornado.web import os IMG_LIST=[] class IndexHandler(tornado.web.RequestHandler): def ...

  6. JAVA记录-Mybatis介绍

    1.什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyB ...

  7. PL/SQL可以连oracle,但是jdbc连不上 【转】

    场景描述 此处是jdbc连接: try { Class.forName("oracle.jdbc.driver.OracleDriver"); String url = " ...

  8. mvn依赖冲突

    https://www.cnblogs.com/twoheads/p/10082453.html

  9. 【★★★★★】提高PHP代码质量的36个技巧

    http://www.cnblogs.com/52php/p/5658031.html 不要直接使用 $_SESSION 变量 某些简单例子: $_SESSION['username'] = $use ...

  10. Lamport Logical Clock 学习

    1,导论 ①如何在分布式环境下定义系统中所有事件的发生顺序?②分布式环境下多个进程竞争资源时如何互斥?③什么是偏序,偏序的作用是什么,有什么不足?④什么是全序,全序的作用是什么,有什么不足?⑤为什么需 ...