Как объявить длину / размер массива в php, чтобы пользователи могли вводить любой размер - PullRequest
1 голос
/ 29 апреля 2020

В C программировании мы заявляем: -

#include<stdio.h>
#define BASE 10 /* constant */

int main{

int freq[BASE]; /* the size of array freq is 10, it can store 10 elements */

}

Как мне преобразовать это в PHP?

Ответы [ 3 ]

2 голосов
/ 29 апреля 2020

В PHP вы определяете / объявляете массив просто

$oldSchool = array();
$newSchool = []; // use this one!

Вы можете добавить новые элементы к нему, просто используя [] рядом с массивом как:

$array[] = 'new element';
count($array); // returns the lenght of the array

Вы можете легко перебрать массив, используя foreach l oop:

foreach($array as $key => $value) {
  echo sprintf('key: %s, value: %s',$key, $value) . PHP_EOL;
}

Существует множество встроенных php функций для работы с массивами https://www.php.net/manual/en/ref.array.php

2 голосов
/ 29 апреля 2020

В PHP вам не нужно объявлять размер массива. Просто установите массив:

$freq = array();

Затем добавьте в массив, как вам нравится:

$freq[] = 'foo';

Чтобы создать массив с определенным размером, вы должны добавить количество элементов к массив, который вы хотите при создании. Вы можете сделать это с помощью array_fill(), например:

$freg = array_fill(0, 9, $some_data);
1 голос
/ 29 апреля 2020

PHP не имеет концепции массивов. Он заказал карты, которые он называет массивами. У них нет конечного размера. Вы не можете иметь массив фиксированного размера, если не используете класс SplFixedArray

Для создания "массива" PHP вы можете использовать следующий синтаксис.

$myArray = [];

Для добавления элементов вы используете ключи. Это отобразит одно значение на другое.

$myArray['myKey'] = 'My string';

Вы также можете использовать цифровые клавиши или добавить новое значение на карту.

$myArray[42] = 'My string of 42';
$myArray[] = 'Appended value'; // the key will be generated by PHP and will be the next available numerical value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...