我想在PHP中初始化一个2维数组,我不知道如何在php中声明一个大小为(1,N)的二维数组,所有值都为零?
int i, id;
unsigned int v;
unsigned char hash[20];
char buf[41];
while(fscanf(file, "%d %s\n", &id, buf) == 2)
{
for(i = 0; i < 20; i++)
{
if(sscanf(buf + i * 2, "%2x", &v) != 1) break;
hash[i] = (unsigned char)v;
}
}
我不确定这是否是正确的语法。
答案 0 :(得分:0)
PHP 没有2d数组,但它有数组数组。你可以使用下面的代码进行初始化。
$Orders_C=array_fill(0,1, array_fill(0, N,0));
此处array_fill
首先将一个填充 0 的数组从索引 0 返回到 N 。再次相同的数组是填充到新数组到索引1.Hence你将在数组中得到一个数组。
答案 1 :(得分:0)
任何列数和行数的通用解决方案可以是:
$maxRows = 5;
$maxCols = 5;
$orders = [];
for ($col = 0; $col < $maxCols; $col++) {
for ($row = 0; $row < $maxRows; $row++) {
$orders[$col] = $row;
}
}
因为你想要像(1,N)这样的二维数组,那么你可以简化它
$orders = [];
for ($i = 0; $i < $maxRows; $i++) {
$orders[0][] = 0;
}