php 如何定义一个数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 如何定义一个数组相关的知识,希望对你有一定的参考价值。

参考技术A php 如何定义一个数组 php中定义阵列的方法:
1、PHP定义阵列的格式:
阵列名=array();
如:$aa=array();这样就定义了一个数组,
之后给元素赋值:
$aa[0]="9016";
$aa[1]="9017";
$aa[2]="9018";
2、PHP输出阵列的方法:
foreach($aa as $val)

echo$val;

也可以在定义阵列时直接赋值
$aa=array(0=>"9016",1=>"9017";2=>"9018");
3、PHP的阵列还可以用字元做下标,不一定要数字:
$aa["name"]="Joan";
$aa["num"]="9018";
$aa["email"]="abc@abc.";
也可以这样
$aa=array("name"=>"joan","num"=>"9018","email"=>"abc@abc.");
将一个一维阵列的元素也定义为阵列,就是一个二维阵列,
$aa=array(0=>"a1",1=>"a2");
$bb=array(0=>"b1",1=>"b2");
$=array(0=>$aa;1=>$bb);此时,$[0]也是一个数组,$[1]也是一个数组,$就是一个二维阵列。
同理,三维,四维阵列也可以继续定义下去。
4、阵列的元素不仅于数字和字串,可以是类的物件。
javascript如何定义一个数组?

var a = [];var a = Array(); 两者都可以的

Verilog 语言如何定义一个数组?
写在标头档案里,用的时候include进去;
定义一个memory阵列,然后把档案用readmemh读到这个数组里面,这样应该就可以 ;
Verilog HDL是一种硬体描述语言(HDL:Hardware Description Language),以文字形式来描述数字系统硬体的结构和行为的语言,用它可以表示逻辑电路图、逻辑表示式,还可以表示数字逻辑系统所完成的逻辑功能。
@property如何定义一个数组属性
test.h
@interface MyTest:NSObject

int myArray[5];

-(void)outPutValues;
@property int *myArray;
@end
即,使用指标来表示返回型别并作为引数设定型别。
#import <Foundation/Foundation .h>
#import 'test.h'
#include<stdio.h>
@implementation MyTest
-(int *)myArray

return myArray;

-(void)setMyArray:(int *)anArray

if(anArray!=NULL)

for(int i=0;i<5;i++)

myArray[i]=anArray[i];



-(void)outPutValues


请教如何定义一个数组在flash中
使用 Array 类可以访问和运算元组。 Array 索引从零开始,这意味着阵列中的第一个元素为 [0],第二个元素为 [1],依此类推。 要建立 Array 物件,可以使用 new Array() 建构函式。 Array() 还可以作为函式呼叫。 此外,还可以使用阵列访问 ([]) ...
iintouch指令码中如何定义一个数组变数
在M档案中编入如下程式:
global a; %matlab自动将a作为阵列处理
for i=1:5
a(i)=i;
end
这样就可以成功定义一个全域性变数阵列。
测试:
在mand window输入:sin(a(1)*a(2)*pi)
得到:
ans =
-2.4493e-016
这样应该说明定义成功了吧。
如何定义一个数组的全域性变数
include #include for malloc()#include int **array; 在所有程式码块之外宣告int main() int i,j,m,n;printf("行数 m = "); 在使用前初始化scanf("%d",&m);printf("列数 n = ");scanf("%d",&n);array = (int **)malloc(sizeof(int **).
pascal如果要定义一个数组为【1.n】,应如何定义?
我不知道另外那个回答的人是什么意思……(为什么要提到Bellmanfor,现在最短路也没有用Bellmanfor的啦)
应该是不能这样定义的,想要做到这样的方法倒是有:
1.开一个足够大的阵列(无聊吧)
2.使用动态的连结串列
3.模拟空间记忆体,基本和2差不多,但是是静态的
php如何定义一个常量阵列
define常量的值;
$config = array('localhost', '127.0.0.1', 'user', 'pwd');$config = serialize($config); serialize — 产生一个可储存的值的表示 define('DB_CONFIG', $config); 定义一个DB_CONFIG常量使用时用:unserialize() 从已储存的表示中建立 PHP 的值print_r(unserialize(DB_CONFIG));还原为阵列状态并列印根据类定义静态阵列 class Constants public static $array = array('localhost', '127.0.0.1', 'user', 'pwd'); 使用:print_r(Constants::$array);列印静态阵列

如何在 PHP/Eclipse 中对 foreach 循环中从数组中拉出的自定义对象进行智能感知?

【中文标题】如何在 PHP/Eclipse 中对 foreach 循环中从数组中拉出的自定义对象进行智能感知?【英文标题】:How can I get intellisense in PHP/Eclipse on custom objects pulled out of array in foreach loop? 【发布时间】:2011-04-14 03:02:18 【问题描述】:

我有一个数组中的自定义对象(Podcast)集合。

当我使用 foreach 循环遍历此集合时,我没有对包含从集合中拉出的对象的变量进行 代码完成(如例如,我会在 C#/VisualStudio 中使用)。

有没有办法给 PHP 一个类型提示,以便 Eclipse 知道从集合中拉出的对象的类型,以便它可以在智能感知中显示该对象上的方法?

<?php

$podcasts = new Podcasts();
echo $podcasts->getListHtml();

class Podcasts 
    private $collection = array();

    function __construct() 
        $this->collection[] = new Podcast('This is the first one');
        $this->collection[] = new Podcast('This is the second one');
        $this->collection[] = new Podcast('This is the third one');
    

    public function getListHtml() 
        $r = '';
        if(count($this->collection) > 0) 
            $r .= '<ul>';
            foreach($this->collection as $podcast) 
                $r .= '<li>' . $podcast->getTitle() . '</li>';
            
            $r .= '</ul>';
               
        return $r;
    


class Podcast 

    private $title;

    public function getTitle()  return $this->title; 
    public function setTitle($value)   $this->title = $value;

    function __construct($title) 
        $this->title = $title;
    



?>

附录

谢谢,Fanis,我更新了我的 FOREACH 模板以自动包含该行:

if(count($lines) > 0) 
    foreach($lines as $line) 
        /* @var $$$var $Type */

    

【问题讨论】:

好东西 :) 模板的使用也很好。 【参考方案1】:

是的,试试:

foreach($this->collection as $podcast) 
    /* @var $podcast Podcast */
    $r .= '<li>' . $podcast->getTitle() . '</

我使用 Eclipse 已经有一段时间了,但我记得它也曾在那里工作过。

【讨论】:

不客气!仅供参考,某些 IDE 可能需要适当的文档块,即双星号:/** @var ... */【参考方案2】:

这可能会帮助互联网上的其他一些人寻找更简洁的解决方案来解决这个问题。

我的解决方案需要 PHP7 或更高版本。这个想法是用匿名函数映射数组并利用类型提示。

  $podcasts = getPodcasts();
  $listItems = array_map(function (Podcast $podcast) 
      return "<li>" . $podcast->getTitle() . "</li>";
  , $podcasts);
  $podcastsHtml = "<ul>\n" . implode("\n", $listItems) . "\n</ul>";

在大多数情况下,foreach 可以转换为array_map,只需将范式转换为函数式编程

如果你使用 Laravel(我相信其他框架也有 Collections),你甚至可以将这些数组映射与数组过滤器和其他类似这样的函数链接起来:

$html = "<ul>" . collect($podcasts)
  ->filter(function (Podcast $p)  return $p !== null; ) // filtering example
  ->map(function (Podcast $p)  return "<li>".$p->getTitle()."</li>"; ) // mapping
  ->implode("\n") . "</ul>";

在普通的 php 中链接这些数组函数看起来很丑...

但是你去吧!一种提示数组迭代的本机类型。

【讨论】:

以上是关于php 如何定义一个数组的主要内容,如果未能解决你的问题,请参考以下文章

PHP中如何定义对象类型数组

php如何定义一个数组,输入9个任意的整数,求该数组中所有奇数的平均值。

php如何定义一个常量数组

PHP中如何定义全局数组?

Chart.js 数据数组使用 PHP、MySQL。如何从 JSON 数组定义数据源?

PHP如何检查一个数组内是不是存在指定元素