Dizi Kütüphanesi


    × Bunları biliyor muydunuz?
"External/ dizini tüm projeleriniz için ortak dosya kullanımı sunar."


Dizilerle ilgili işlemlerin gerçekleştirilmesi için oluşturulmuş kütüphanedir. Bazı yöntemlerin kullanımını prosedürel kullanım ile paralellik göstermekte iken bazılar ise kullanım noktasında farklılıklar içermektedir. Bu kütüphanenin oluşturulmasındaki amaç sadece fonksiyonları sınıf haline getirmek değildir. Bu fonksiyonların derlenip daha kolay ve kullanışlı işlevler haline getirilmesidir.

 

 

# Kurulum


ZN SE ve ZN CE dağıtımları için terminal kurulum komutu.

↓ composer require znframework/package-datatypes

 

 

# Yöntemler


4.3.2 Array force(Array $array, Callable $callback)
4.3.2 Array forceKeys(Array $array, Callable $callback)
4.3.2 Array forceValues(Array $array, Callable $callback)
3.0.0 Array addFirst(Array $array, Mixed $element)
3.0.0 Array addLast(Array $arrayMixed $element)
3.0.0 Array getFirst(Array $array, Int $count = 1, Bool $preserveKey = false)
3.0.0 Array getLast(Array $array, Int $count = 1, Bool $preserveKey = false)
3.0.0 Array removeKey(Array $arrayMixed $keys)
3.0.0 Array removeValue(Array $arrayMixed $values)
3.0.0 Array remove(Array $array, $keysMixed $values)
3.0.0 Array removeFirst(Array $array, Int $count = 1)
3.0.0 Array removeLast(Array $array, Int $count = 1)
2.0.0 Array deleteElement(Array $arrayMixed $object)
1.0.0 Array casing(Array $array, String $type = 'lower', String $keyval = 'all')
3.0.0 Array lowerKeys(Array $array)
3.0.0 Array titleKeys(Array $array)
3.0.0 Array upperKeys(Array $array)
3.0.0 Array lowerValues(Array $array)
3.0.0 Array titleValues(Array $array)
3.0.0 Array upperValues(Array $array)
2.0.0 Array lowerCase(">lowerCase(Array $array)
2.0.0 Array titleCase(Array $array)
2.0.0 Array upperCase(Array $array)
3.1.2 Mixed each(Array $array, Callable $callable)
4.0.0 Array exclude/excluding(Array $array, Array $excluding
4.0.0 Array include/including(Array$array, Array $includi
1.0.0 Array keyval(Array $array, String $keyval = 'value')
2.0.0 Array value(Array $array)
2.0.0 Array key(Array $array)
2.0.0 Array values(Array $array)
2.0.0 Array keys(Array $array)
2.0.0 Array multikey(Array $array, String $keySplit = '|')
3.0.0 Int length(Array $data)
3.0.0 Array apportion(Array $data, Int $portionCount = 1, Bool $preserveKeys = false)
3.0.0 Array combine(Array $keys, Array $values)
3.0.0 Array countSameValues(Array $array, String $key = NULL)
3.0.0 Array flip/transform(Array $array)
3.0.0 Array implementCallback/map(Array ...$args)
3.0.0 Array recursiveMerge(Array ...$args)
3.0.0 Array merge(Array ...$args)
3.0.0 Array intersect(Array ...$args)
3.0.0 Array intersectKey(Array ...$args)
3.0.0 Array reverse(Array $array, Bool $preserveKeys = false)
3.0.0 Float product(Array $array)
3.0.0 Float sum(Array $array)
3.0.0 Array random(Array $array, Int $countRequest)
3.0.0 Mixed search(Array $array, $element, Bool $strict = false)
3.0.0 Bool valueExists(Array $array, $element, Bool $strict = false)
3.0.0 Bool valueExistsInsensitive(Array $arrayMixed $element, Bool $strict = false)
3.0.0 Bool keyExists(Array $arrayMixed $key)
3.0.0 Array section(Array $array, Int $start = 0, Int $len = NULL, Bool $preserve = false)
3.0.0 Array resection(Array $array, Int $start = 0, Int $len = NULL, Mixed $new = NULL)
3.0.0 Array deleteRecurrent(Array $array, String $flags = 'string')
3.0.0 Array series(Int $start, Int $end, Int $step = 1)
3.0.0 Array column(Array $arrayMixed $columnKeyMixed $indexKey = NULL)
3.0.0 Array order(Array $array, String $type = NULL, String $flags = 'regular')
3.0.0 Array sort(Array $array, String $flag = 'regular')
3.0.0 Array descending(Array $array, String $flag = 'regular')
3.0.0 Array ascending(Array $array, String $flag = 'regular')
3.0.0 Array ascendingKey(Array $array, String $flag = 'regular')
3.0.0 Array descendingKey(Array $array, String $flag = 'regular')
3.0.0 Array userAssocSort(Array $array, String $flag = 'regular')
3.0.0 Array userKeySort(Array $array, String $flag = 'regular')
3.0.0 Array userSort(Array $array, String $flag = 'regular')
3.0.0 Array insensitiveSort(Array $array)
3.0.0 Array naturalSort(Array $array)
3.0.0 Array shuffle(Array $array)
5.4.5 Array unidimensional(Array $array, Bool $preserveKey = true)
5.7.6 Array pick(Array $array, String $pick)

 

 

# Force (ZN >= 4.3.2)


Dizi anahtarlarına ve değerlerine geri çağrım uygulamak için oluşturulmuştur.

Parametreler

Array $array İlgili dizi.
Mixed $callable Uygulanacak işlev.
Return Array

Kullanımı

$arrays = ['a' => 'A', 'b' => 'B'];

$array = Arrays::force($arrays, function($data)
{
    return suffix($data, '+');
});

output($array);
a+ => string 'A+' ( length = 4 )
b+ => string 'B+' ( length = 4 )

 

 

# ForceKeys (ZN >= 4.3.2)


Dizi anahtarlarına geri çağrım uygulamak için oluşturulmuştur.

Parametreler

Array $array İlgili dizi.
Mixed $callable Uygulanacak işlev.
Return Array

Kullanımı

$arrays = ['a' => 'A', 'b' => 'B'];

$array = Arrays::forceKeys($arrays, function($data)
{
    return suffix($data, '+');
});

output($array);
a+ => string 'A' ( length = 3 )
b+ => string 'B' ( length = 3 )

 

 

# ForceValues (ZN >= 4.3.2)


Dizi değerlerine geri çağrım uygulamak için oluşturulmuştur.

Parametreler

Array $array İlgili dizi.
Mixed $callable Uygulanacak işlev.
Return Array

Kullanımı

$arrays = ['a' => 'A', 'b' => 'B'];

$array = Arrays::forceValues($arrays, function($data)
{
    return suffix($data, '+');
});

output($array);
a => string 'A+' ( length = 4 )
b => string 'B+' ( length = 4 )

 

 

# AddFirst (ZN >= 3.0.0)


Dizinin başına eleman eklemek için kullanılır.

Parametreler

Array $array İlgili dizi.
Mixed $data Eklenecek yeni değer veya değerler.
Return Array

Kullanımı

$data = ['example' => 'Example'];

$data = Arrays::addFirst($data, 'newElement');
$data = Arrays::addFirst($data, ['firstElement' => 'First Element']);

output($data);
firstElement => string 'First Element' ( length = 15 ),
0 => string 'newElement' ( length = 12 ),
example => string 'Example' ( length = 9 )

 

 

# AddLast (ZN >= 3.0.0)


Dizinin sonuna eleman eklemek için kullanılır.

Parametreler

Array $array İlgili dizi.
Mixed $data Eklenecek yeni değer veya değerler.
Return Array

Kullanımı

$data = ['example' => 'Example'];

$data = Arrays::addLast($data, 'newElement');
$data = Arrays::addLast($data, 
[
    'lastElement'    => 'Last Element', 
    'lastestElement' => 'Lastest Element'
]);

output($data);
example => string 'Example' ( length = 9 ),
0 => string 'newElement' ( length = 12 ),
lastElement => string 'Last Element' ( length = 14 ),
lastestElement => string 'Lastest Element' ( length = 17 )

 

 

# GetFirst (ZN >= 3.0.0)


Dizinin başından eleman almak için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $count = 1 Kaç eleman seçileceği belirtilir.
Bool $preserveKey = false Dizi indislerinin korunup korunmayacağı belirtilir.
Return Mixed

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output(Arrays::getFirst($data));
output(Arrays::getFirst($data, 2));
Foo
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 )

 

 

# GetLast (ZN >= 3.0.0)


Dizinin sonundan eleman almak için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $count = 1 Kaç eleman seçileceği belirtilir.
Bool $preserveKey = false Dizi indislerinin korunup korunmayacağı belirtilir.
Return Mixed

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output(Arrays::getLast($data));
output(Arrays::getLast($data, 2));
Baz
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 )

 

 

# RemoveKey (ZN >= 3.0.0)


Dizi anahtarına göre eleman silmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Mixed $keys Hangi anahtara ait verinin silineceği.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output(Arrays::removeKey($data, 'bar'));
output('-----------------------------------');
output(Arrays::removeKey($data, ['foo', 'baz']));
foo => string 'Foo' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),

-----------------------------------
bar => string 'Bar' ( length = 5 )

 

 

# RemoveValue (ZN >= 3.0.0)


Dizi değerine göre eleman silmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Mixed $keys Hangi değerlerin silineceği.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output(Arrays::removeValue($data, 'Bar'));
output('-----------------------------------');
output(Arrays::removeValue($data, ['Foo', 'Baz']));
foo => string 'Foo' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),

-----------------------------------
bar => string 'Bar' ( length = 5 )

 

 

# Remove (ZN >= 3.0.0)


Dizi anahtarına ve değerine göre eleman silmek için kullanılır. removeKey() ve removeValue() yöntemlerini aynı anda kullanabilir.

Parametreler

Array $array İlgili dizi.
Mixed $keys Hangi anahtar veya anahtarların silineceği.
Mixed $values Hangi değer veya değerlerin silineceği.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::remove($data, 'bar', ['Foo', 'Baz']));
zoo => string 'Zoo' ( length = 5 )

 

 

# RemoveFirst (ZN >= 3.0.0)


Dizinin başından eleman silmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $count = 1 Kaç eleman silineceği.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::removeFirst($data, 1));
output('-----------------------------------');
output(Arrays::removeFirst($data, 2));
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 ),

-----------------------------------
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 )

 

 

# RemoveLast (ZN >= 3.0.0)


Dizinin sonundan eleman silmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $count = 1 Kaç eleman silineceği.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::removeLast($data, 1));
output('-----------------------------------');
output(Arrays::removeLast($data, 2));
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),

-----------------------------------
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 )

 

 

# DeleteElement (ZN >= 2.0.0)


Diziden eleman silmek için kullanılır. Bu yöntemin silme işlevi diğerlerinden biraz daha farklıdır.

Parametreler

Array $array İlgili dizi.
Mixed $object Silinecek değer ve değerler.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::deleteElement($data, 'Foo'));
output('-----------------------------------');
output(Arrays::deleteElement($data, ['Foo', 'Bar']));
output('-----------------------------------');
output(Arrays::deleteElement($data, ['bar' => 'Baz', 'zoo' => 'Zoo']));
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 ),

-----------------------------------
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 ),

-----------------------------------
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 ),
 

 

 

# Casing (ZN >= 1.0.0)


Dizi elemanlarında büyük küçük harf dönüşümü yapmak için kullanılır.

Parametreler

Array $array İlgili dizi.
String $type = 'lower' Dönüştürülme türü.
Seçenekler lower, upper, title
String $keyval = 'all' Dönüşümün uygulanma alanı. Yani sadece anahtarları mı, değerleri mi yoksa hepsine mi belirtilir.
Seçenekler all, key, value
Return Array

Kullanımı

output(Arrays::casing($data, 'upper'));          // Keys, Values Upper
output('-----------------------------------');
output(Arrays::casing($data, 'upper', 'key'));   // Only Keys Upper
output('-----------------------------------');
output(Arrays::casing($data, 'upper', 'value')); // Only Values Upper
FOO => string 'FOO' ( length = 5 ),
BAR => string 'BAR' ( length = 5 ),
BAZ => string 'BAZ' ( length = 5 ),
ZOO => string 'ZOO' ( length = 5 ),

-----------------------------------
FOO => string 'Foo' ( length = 5 ),
BAR => string 'Bar' ( length = 5 ),
BAZ => string 'Baz' ( length = 5 ),
ZOO => string 'Zoo' ( length = 5 ),

-----------------------------------
foo => string 'FOO' ( length = 5 ),
bar => string 'BAR' ( length = 5 ),
baz => string 'BAZ' ( length = 5 ),
zoo => string 'ZOO' ( length = 5 )

 

 

# LowerKeys (ZN >= 3.0.0)


Dizi anahtarlarını küçük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::lowerKeys($data));
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 )

 

 

# TitleKeys (ZN >= 3.0.0)


Dizi anahtarlarının sadece baş harflerini büyük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::titleKeys($data));
Foo => string 'Foo' ( length = 5 ),
Bar => string 'Bar' ( length = 5 ),
Baz => string 'Baz' ( length = 5 ),
Zoo => string 'Zoo' ( length = 5 )

 

 

# UpperKeys (ZN >= 3.0.0)


Dizi anahtarlarını büyük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::upperKeys($data));
FOO => string 'Foo' ( length = 5 ),
BAR => string 'Bar' ( length = 5 ),
BAZ => string 'Baz' ( length = 5 ),
ZOO => string 'Zoo' ( length = 5 )

 

 

# LowerValues (ZN >= 3.0.0)


Dizi değerlerini küçük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::lowerValues($data));
foo => string 'foo' ( length = 5 ),
bar => string 'bar' ( length = 5 ),
baz => string 'baz' ( length = 5 ),
zoo => string 'zoo' ( length = 5 )

 

 

# TitleValues (ZN >= 3.0.0)


Dizi değerlerinin sadece baş harflerini büyük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::titleValues($data));
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 )

 

 

# UpperValues (ZN >= 3.0.0)


Dizi değerlerini büyük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];

output(Arrays::upperValues($data));
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 ),
baz => string 'Baz' ( length = 5 ),
zoo => string 'Zoo' ( length = 5 )

 

 

# LowerCase (ZN >= 2.0.0)


Dizi anahtar ve değerlerini küçük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar'];

output(Arrays::lowerCase($data));
foo => string 'foo' ( length = 5 ),
bar => string 'bar' ( length = 5 )

 

 

# TitleCase (ZN >= 2.0.0)


Dizi anahtar ve değerlerinin ilk harfini büyük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar'];

output(Arrays::titleCase($data));
Foo => string 'Foo' ( length = 5 ),
Bar => string 'Bar' ( length = 5 )

 

 

# UpperCase (ZN >= 2.0.0)


Dizi anahtar ve değerlerini büyük harfe dönüştürür.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar'];

output(Arrays::upperCase($data));
FOO => string 'FOO' ( length = 5 ),
BAR => string 'BAR' ( length = 5 )

 

 

# Each (ZN >= 3.1.2)


Dizi anahtar ve değerlerini döngü ile yakalamak için kullanılır.

Parametreler

Array $array İlgili dizi.
Callable $callable Çalıştırılacak işlev.
Return Mixed

Kullanımı

Arrays::each($data, function($value, $key)
{
    \Output::writeLine('{0} - {1}', [$key, $value]);
});
foo - Foo
bar - Bar 

 

 

# Exclude / Excluding (ZN >= 4.0.0)


Dizi içerisinde istenmeyen elemanları yok sayması için kullanılır.

Parametreler

Array $array İlgili dizi.
Array $exclude Yok sayılacak elemanlar. Yok sayılması istenen elemanın değeri veya anahtarı kullanılabilir.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::exclude($data, ['foo', 'Baz']) );
bar => string 'Bar' ( length = 5 )

 

 

# Include / Including (ZN >= 4.0.0)


Dizi içerisinde istenen elemanları alıp diğerlerini yok sayması için kullanılır.

Parametreler

Array $array İlgili dizi.
Array $exclude Yok sayılmayacak elemanlar. Yok sayılmaması istenen elemanın değeri veya anahtarı kullanılabilir.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::include($data, ['foo', 'Baz']) );
foo => string 'Foo' ( length = 5 ),
baz => string 'Baz' ( length = 5 )

 

 

# Keyval (ZN >= 1.0.0)


Anahtar değer çiftleri içeren bir diziden sadece anahtarları veya değerleri almak için kullanılır.

Parametreler

Array $array İlgili dizi.
String $type = 'value' Dizi içerisinde yer alan anahtar/anahtarlar veya değer/değerleri almak için kullanılır.
Seçenekler value, key, values, keys
Return Mixed

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

\Output::writeLine( Arrays::keyval($data) );
\Output::writeLine( Arrays::keyval($data, 'key') );
output( Arrays::keyval($data, 'values') );
output( Arrays::keyval($data, 'keys') );
Foo
foo
0 => string 'Foo' ( length = 5 ),
1 => string 'Bar' ( length = 5 ),
2 => string 'Baz' ( length = 5 ),

0 => string 'foo' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
2 => string 'baz' ( length = 5 )

 

 

# Value (ZN >= 2.0.0)


Dizinin ilk değerini alır.

Parametreler

Array $array İlgili dizi.
Return Mixed

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

\Output::writeLine( Arrays::value($data) );
Foo

 

 

# Key (ZN >= 2.0.0)


Dizinin ilk değerinin anahtarını alır.

Parametreler

Array $array İlgili dizi.
Return Mixed

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

\Output::writeLine( Arrays::key($data) );
foo 

 

 

# Values (ZN >= 2.0.0)


Dizinin değerini alır.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::values($data) );
0 => string 'Foo' ( length = 5 ),
1 => string 'Bar' ( length = 5 ),
2 => string 'Baz' ( length = 5 )

 

 

# Keys (ZN >= 2.0.0)


Dizinin anahtarlarını alır.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::keys($data) );
0 => string 'foo' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
2 => string 'baz' ( length = 5 )

 

 

# Multikey (ZN >= 2.0.0)


Aynı değeri tutacak birden fazla farklı dizi anahtarı kullanılacaksa bu yöntem kullanılır.

Parametreler

Array $array İlgili dizi.
String $keySplit = '|' Anahtar ayracı.
Return Array

Kullanımı

$data = ['foo|zoo|bar' => 'Foo'];

output( Arrays::multikey($data) );
foo => string 'Foo' ( length = 5 ),
zoo => string 'Foo' ( length = 5 ),
bar => string 'Foo' ( length = 5 )

 

 

# Length (ZN >= 3.0.0)


Dizinin kaç elemanlı olduğu bilgisini verir.

Parametreler

Array $array İlgili dizi.
Return Int

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

write( Arrays::length($data) );
3

 

 

# Apportion (ZN >= 3.0.0)


Diziyi belirlenen sayıda bölümlere ayırmak için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $portionCount = 1 Kaçar adet bölümlere ayrılacağı belirtilir.
Bool $preserveKey = false İşlemden sonra dizi anahtarlarının korunup korunmayacağı.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::apportion($data, 2) );
0 => array
(
        0 => string 'Foo' ( length = 5 ),
        1 => string 'Bar' ( length = 5 ),
),
1 => array
(
        0 => string 'Baz' ( length = 5 ),
)

 

 

# Combine (ZN >= 3.0.0)


2 farklı dizinin değerlerini anahtar ve değer çifti olacak şekilde birleştirmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Array $otherArray Birleştirilecek diğer dizi.
Return Array

Kullanımı

$data      = ['foo', 'bar'];
$otherData = ['Foo', 'Bar'];

output( Arrays::combine($data, $otherData) );
foo => string 'Foo' ( length = 5 ),
bar => string 'Bar' ( length = 5 )

 

 

# CountSameValues (ZN >= 3.0.0)


Dizide tekrar eden elemanın sayısını öğrenmek için kullanılır.

Parametreler

Array $array İlgili dizi.
String $key = NULL Hangi elamanın tekrar ettiği
Return Int

Kullanımı

$data = ['foo', 'bar', 'baz', 'foo', 'foo'];

write( Arrays::countSameValues($data, 'foo') );
3

 

 

# Transform / Flip (ZN >= 3.0.0)


Dizinin anahtarları ile değerlerini yer değiştirmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Return Array

Kullanımı

$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::transform($data) );
Foo => string 'foo' ( length = 5 ),
Bar => string 'bar' ( length = 5 ),
Baz => string 'baz' ( length = 5 )

 

 

# ImplementCallback / Map (ZN >= 3.0.0)


Dizi elemanlarına yöntem veya fonksiyon uygulamak için kullanılır.

Parametreler

Callable $callback Uygulanacak işlev.
Array ...$array İlgili dizi.
Return Array

Kullanımı

$data  = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];

output( Arrays::implementCallback('strtoupper', $data) );
foo => string 'FOO' ( length = 5 ),
bar => string 'BAR' ( length = 5 ),
baz => string 'BAZ' ( length = 5 )

 

 

# RecursiveMerge (ZN >= 3.0.0)


İki veya daha fazla sayıda diziyi ardarda ekleyerek yeni bir dizi oluşturur.

Parametreler

Array ...$array İlgili dizi.
Return Array

Kullanımı

$data   = ['foo', 'bar' => ['Bar', 'BAR']];
$data2  = ['baz', 'zoo'];

output( Arrays::recursiveMerge($data, $data2) );
0 => string 'foo' ( length = 5 ),
bar => array
(
        0 => string 'Bar' ( length = 5 ),
        1 => string 'BAR' ( length = 5 ),
),
1 => string 'baz' ( length = 5 ),
2 => string 'zoo' ( length = 5 )

 

 

# Merge (ZN >= 3.0.0)


Belirtilen dizileri ardarda ekleyerek yeni bir dizi oluşturur.

Parametreler

Array ...$array İlgili dizi.
Return Array

Kullanımı

$data   = ['foo', 'bar'];
$data2  = ['baz', 'zoo'];

output( Arrays::merge($data, $data2) );
0 => string 'foo' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
2 => string 'baz' ( length = 5 ),
3 => string 'zoo' ( length = 5 )
 

 

 

# Intersect (ZN >= 3.0.0)


Belirtilen dizilerin ortak elemanlarını bularak yeni bir dizi oluşturur.

Parametreler

Array ...$array İlgili dizi.
Return Array

Kullanımı

$data   = ['foo', 'bar', 'baz'];
$data2  = ['baz', 'zoo', 'coo'];

output( Arrays::intersect($data, $data2) );
2 => string 'baz' ( length = 5 )

 

 

# Reverse (ZN >= 3.0.0)


Dizinin elemanlarını tersten sıralar.

Parametreler

Array $array İlgili dizi.
Bool $preserveKeys = false Dizi anahtalarını korunup korunmayacağı.
Return Array

Kullanımı

$data   = ['foo', 'bar', 'baz'];

output( Arrays::reverse($data) );
output( Arrays::reverse($data, true) );
0 => string 'baz' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
2 => string 'foo' ( length = 5 ),

---------------------------------
2 => string 'baz' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
0 => string 'foo' ( length = 5 )

 

 

# Product (ZN >= 3.0.0)


Dizideki değerlerin toplamını hesaplar.

Parametreler

Array $array İlgili dizi.
Return Float

Kullanımı

$data = [10, 3, 5];

output( Arrays::product($data) );
150

 

 

# Sum (ZN >= 3.0.0)


Dizideki değerlerin çarpımı hesaplar.

Parametreler

Array $array İlgili dizi.
Return Float

Kullanımı

$data = [10, 3, 5];

output( Arrays::sum($data) );
18

 

 

# Search (ZN >= 3.0.0)


Dizi içinde arama yapmak için kullanılır. Arama sonucunda eleman bulunursa o elemanın indis değeri döner.

Parametreler

Array $array İlgili dizi.
Mixed $element Aranacak değer.
Bool $strict = false Aranılan nesnenin türüne bak.
Return Mixed

Kullanımı

$data = ['foo', 'bar', 'baz'];

output( Arrays::search($data, 'baz') );
output( Arrays::search($data, 'bar') );
2
1

 

 

# ValueExists (ZN >= 3.0.0)


Dizi içinde değer aramak için kullanılır. Eğer sonuç varsa true yoksa false döner.

Parametreler

Array $array İlgili dizi.
Mixed $key Aranacak anahtar.
Return Bool

Kullanımı

$data = ['foo', 'bar', 'baz'];

output( Arrays::valueExists($data, 'bar') );
1

 

 

# KeyExists (ZN >= 3.0.0)


Dizi içinde anahtar aramak için kullanılır. Eğer sonuç varsa true yoksa false döner.

Parametreler

Array $array İlgili dizi.
Mixed $key Aranacak anahtar.
Return Bool

Kullanımı

$data = ['foo', 'bar' => 'Bar', 'baz'];

output( Arrays::keyExists($data, 'bar') );
1

 

 

# Section (ZN >= 3.0.0)


Diziden kesit almak için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $start = 0 Başlangıç indisi.
Int $length = NULL Kaç karakter alınacağı.
Bool $preserveKeys = NULL Anahtar değerlerinin korunup korunmayacağı.
Return Array

Kullanımı

$data = ['foo', 'bar', 'baz', 'zoo', 'coo'];

output( Arrays::section($data, 2, 2) );
0 => string 'baz' ( length = 5 ),
1 => string 'zoo' ( length = 5 )

 

 

# Resection (ZN >= 3.0.0)


Dizinin belli bir kesitini değiştirmek için kullanılır.

Parametreler

Array $array İlgili dizi.
Int $start = 0 Başlangıç indisi.
Int $length = NULL Kaç karakter alınacağı.
Bool $newElement = NULL Yeni eklenecek kesit.
Return Array

Kullanımı

$data = ['foo', 'bar', 'baz', 'zoo', 'coo'];

output( Arrays::resection($data, 2, 3, ['BAR', 'ZOO']) );
0 => string 'foo' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
2 => string 'BAR' ( length = 5 ),
3 => string 'ZOO' ( length = 5 )

 

 

# DeleteRecurrent (ZN >= 3.0.0)


Dizide tekrar eden elemanları silmek için kullanılır.

Parametreler

Array $array İlgili dizi.
String $flags = 'string' Davranış biçimi.
Seçenekler string, numeric, regular, localString
Return Array

Kullanımı

$data = ['foo', 'bar', 'baz', 'bar', 'bar'];

output( Arrays::deleteRecurrent($data) );
0 => string 'foo' ( length = 5 ),
1 => string 'bar' ( length = 5 ),
2 => string 'baz' ( length = 5 )

 

 

# Series (ZN >= 3.0.0)


Belli bir aralıkta dizi oluşturmak için kullanılır.

Parametreler

Int $start Başlangıç indisi.
Int $end Bitiş indisi.
Int $step = 1 Artış miktarı.
Return Array

Kullanımı

output( Arrays::series(0, 100, 10) );
0 => integer 0 ( length = 1 ),
1 => integer 10 ( length = 2 ),
2 => integer 20 ( length = 2 ),
3 => integer 30 ( length = 2 ),
4 => integer 40 ( length = 2 ),
5 => integer 50 ( length = 2 ),
6 => integer 60 ( length = 2 ),
7 => integer 70 ( length = 2 ),
8 => integer 80 ( length = 2 ),
9 => integer 90 ( length = 2 ),
10 => integer 100 ( length = 3 )

 

 

# Column (ZN >= 3.0.0)


Anahtar veriye göre dizideki değerleri döndürür.

Parametreler

Array $array İlgili dizi.
Mixed $columnKey= 0 Döndürülecek değerlerin sütunu.
Mixed $indexKey = NULL Döndürülen dizinin anahtarları olarak kullanılacak sütun.
Return Array

Kullanımı

$records =

[
    ['id' => 13, 'firstName' => 'Foo', 'lastName' => 'FOO'],
    ['id' => 29, 'firstName' => 'Bar', 'lastName' => 'BAR']
];

output( Arrays::column($records, 'firstName') );
0 => string 'Foo' ( length = 6 ),
1 => string 'Bar' ( length = 7 )
output( Arrays::column($records, 'firstName', 'id') );
13 => string 'Foo' ( length = 6 ),
29 => string 'Bar' ( length = 7 )

 

 

# Unidimensional (ZN >= 5.4.5)


Çok boyutlu karmaşık bir diziyi tek boyutlu hale getirir. Çok boyutlu yapıda bulunan diziler en üst katmana çıkartılır.

Parametreler

Array $array İlgili dizi.
Bool $preserveKey = true Anahtarlar korunsun mu?.
Return Array

Kullanımı

$array = ['foo', ['bar'], ['baz' => 'xoo']];

output( Arrays::unidimensional($array) );
0   => foo
1   => bar
baz => xoo

 

 

# Pick (ZN >= 5.7.6)


Bir dizi içerisinde yer alan dizilere ait benzer anahtara sahip dizilerin değerlerini alır.

Parametreler

Array $array İlgili dizi.
String $pick Hangi anahtara sahip değerlerin alınacağı.
Return Array

Kullanımı

$array = 
[
    ['name' => 'ZN'],
    ['name' => 'Framework']
];

output( Arrays::pick($array, 'name') );
=> string 'ZN' ( length = 4 )
=> string 'Framework' ( length = 11 )