array_fill

(PHP 4 >= 4.2.0, PHP 5)

array_fill — Заполнить массив определенным значением

Описание

array array_fill ( integer $start_index , integer $num , mixed $value )

Функция array_fill() возвращает массив, содержащий num элементов, имеющих значение параметра value . Нумерация ключей элементов массива начинаются со значения параметра start_index parameter.

Пример #1 Пример использования array_fill()

$a = array_fill(5, 6, 'banana');

Переменная $a теперь содержит следующие значения (вывод функции print_r()):

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

Коментарии

This is what I recently did to quickly create a two dimensional array (10x10), initialized to 0:

<?php
  $a 
array_fill(010array_fill(0100));
?>

This should work for as many dimensions as you want, each time passing to array_fill() (as the 3rd argument) another array_fill() function.
2004-08-11 13:32:39
http://php5.kiev.ua/manual/ru/function.array-fill.html
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)==){//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
2012-02-24 20:04:55
http://php5.kiev.ua/manual/ru/function.array-fill.html
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(02, 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.
2013-11-10 05:07:07
http://php5.kiev.ua/manual/ru/function.array-fill.html
If you need negative indices:
<?php
$b 
array_fill(-24'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
)
2014-06-16 13:00:46
http://php5.kiev.ua/manual/ru/function.array-fill.html
Автор:
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(0max($atleastmax(array_keys($array))), $default);
}

?>
2018-01-14 01:57:38
http://php5.kiev.ua/manual/ru/function.array-fill.html
As of PHP 8.0 the example code

<?php
$b 
array_fill(-24'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
2021-06-30 07:28:39
http://php5.kiev.ua/manual/ru/function.array-fill.html

    Поддержать сайт на родительском проекте КГБ