PHP.mk документација

array_fill

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.array-fill.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.array-fill.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
array_fill

Референца за `function.array-fill.php` со подобрена типографија и навигација.

function.array-fill.php

array_fill

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

array_fill(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

= NULL

array_fill(int $start_index, int $count, mixed $value): array

Пополни ја низата со вредности count Пополнува низа со value внесувања на вредноста од start_index parameter.

Параметри

start_index

параметарот, клучевите почнувајќи од

Враќа start_index Првиот индекс на вратениот низ. start_index е негативен, првиот индекс на вратениот низ ќе биде example).

count

а следните индекси ќе започнат од нула пред PHP 8.0.0; од PHP 8.0.0, негативните клучеви се зголемуваат нормално (види 2147483647.

value

Број на елементи за вметнување. Мора да биде поголем или еднаков на нула, и помал или еднаков на

Вратени вредности

Вредност за пополнување

Errors/Exceptions

Фрла ValueError if count е надвор од опсег.

Дневник на промени

Верзија = NULL
8.0.0 array_fill() сега фрла ValueError if count Враќа пополнета низа E_WARNING и функцијата врати false.

Примери

Пример #1 array_fill() example

<?php
$a
= array_fill(5, 6, 'banana');
print_r($a);
?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

Array
(
    [5]  => banana
    [6]  => banana
    [7]  => banana
    [8]  => banana
    [9]  => banana
    [10] => banana
)

Пример #2 array_fill() е надвор од опсег; претходно

<?php
$a
= array_fill(-2, 4, 'pear');
print_r($a);
?>

Излез од горниот пример во PHP 8:

Array
(
    [-2] => pear
    [-1] => pear
    [0] => pear
    [1] => pear
)

Излез од горниот пример во PHP 7:

Array
(
    [-2] => pear
    [0] => pear
    [1] => pear
    [2] => pear
)

пример со негативен почетен индекс -1 Забележи дека индексот

Белешки

Погледнете исто така Низи не е присутен пред PHP 8.0.0.

Види Исто така

  • array_fill_keys() дел од прирачникот за детален објаснување на негативните клучеви.
  • str_repeat() - Пополни низа со вредности, специфицирајќи клучеви
  • range() - Креирај низа што содржи опсег на елементи

Белешки од корисници 6 белешки

csst0266 на cs dot uoi dot gr
21 години пред
This is what I recently did to quickly create a two dimensional array (10x10), initialized to 0:

<?php
  $a = array_fill(0, 10, array_fill(0, 10, 0));
?>

This should work for as many dimensions as you want, each time passing to array_fill() (as the 3rd argument) another array_fill() function.
анатолиј на ukhvanovy dot name
пред 11 години
If you need negative indices:
<?php
$b = array_fill(-2, 4, 'pear');//this is not what we want
$c = array_fill_keys(range(-2,1),'pear');//these are negative indices
print_r($b);
print_r($c);
?>
Here is result of the code above:
Array
(
    [-2] => pear
    [0] => pear
    [1] => pear
    [2] => pear
)
Array
(
    [-2] => pear
    [-1] => pear
    [0] => pear
    [1] => pear
)
- Повтори низа
12 години пред
Using objects with array_fill may cause unexpected results. Consider the following:

<?php
class Foo {
   public $bar = "banana";
}

//fill an array with objects
$array = array_fill(0, 2, new Foo());

var_dump($array);
/*
array(2) {
  [0]=>
  object(Foo)#1 (1) {
    ["bar"]=>
    string(6) "banana"
  }
  [1]=>
  object(Foo)#1 (1) {
    ["bar"]=>
    string(6) "banana"
  }
} */

//now we change the attribute of the object stored in index 0
//this actually changes the attribute for EACH object in the ENTIRE array
$array[0]->bar = "apple";

var_dump($array);
/*
array(2) {
  [0]=>
  object(Foo)#1 (1) {
    ["bar"]=>
    string(5) "apple"
  }
  [1]=>
  object(Foo)#1 (1) {
    ["bar"]=>
    string(5) "apple"
  }
}
 */
?>

Objects are filled in the array BY REFERENCE. They are not copied for each element in the array.
user на NOSPAM dot example dot com
пред 4 години
As of PHP 8.0 the example code

<?php
$b = array_fill(-2, 4, 'pear');
print_r($b);
?>

now returns

Array
(
    [-2] => pear
    [-1] => pear
    [0] => pear
    [1] => pear
)

See https://wiki.php.net/rfc/negative_array_index and https://github.com/php/php-src/pull/3772
mchljnk at NOSPAM dot gmail dot com
пред 14 години
I made this function named "array_getMax" that returns te maximum value and index, from array:

<?php
//using array_search_all by helenadeus at gmail dot com

function array_search_all($needle, $haystack)
{#array_search_match($needle, $haystack) returns all the keys of the values that match $needle in $haystack

    foreach ($haystack as $k=>$v) {
   
        if($haystack[$k]==$needle){
       
           $array[] = $k;
        }
    }
    return ($array);

   
}

function array_getMax($array){
        
    $conteo=array_count_values($array);
    
    if( count($conteo)==1 ){//returns full array when all values are the same.
        return  $array;       
    }
       
    arsort($array);
    
    //$antValue=null;
    $maxValue=null;
    $keyValue=null;
    foreach($array as $key=>$value){
        if($maxValue==null){
            $maxValue=$value;
            $keyValue=$key;
            break;
        }        
    }
    
    $resultSearch=array_search_all($maxValue, $array);
        
   return  array_fill_keys($resultSearch, $maxValue);
    
    
}

//example 
  $arreglo=array('e1'=>99,'e2'=>'99','e3'=>1,'e4'=>1,'e5'=>98);
    
    var_dump(array_getMax($arreglo));

//output
/*
array(2) {
  ["e1"]=>
  int(99)
  ["e2"]=>
  int(99)
}
*/
?>

I hope some one find this usefull
Хејли Вотсон
пред 8 години
Fill missing keys in a (numerically-indexed) array with a default value

<?php

function fill_missing_keys($array, $default = null, $atleast = 0)
{
    return $array + array_fill(0, max($atleast, max(array_keys($array))), $default);
}

?>
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.