Dizi Kütüphanesi
"(ZN >= 5.6) Sürümü itibari ile View:: kütüphanesi parametresiz kullanımda tuttuğu değeri döndürmektedir."
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 dağıtımları için kurulum gerekmez.
↓ composer require znframework/package-datatypes
# Yöntemler
# Force (ZN >= 4.3.2)
Dizi anahtarlarına ve değerlerine geri çağrım uygulamak için oluşturulmuştur.
Parametreler
Array | $arr | İlgili dizi. |
Mixed | $callable | Uygulanacak işlev. |
Return | Array |
Kullanımı
$arrs = ['a' => 'A', 'b' => 'B'];
$arr = Arrays::force($arrs, function($data)
{
return suffix($data, '+');
});
output($arr);
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 | $arr | İlgili dizi. |
Mixed | $callable | Uygulanacak işlev. |
Return | Array |
Kullanımı
$arrs = ['a' => 'A', 'b' => 'B'];
$arr = Arrays::forceKeys($arrs, function($data)
{
return suffix($data, '+');
});
output($arr);
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 | $arr | İlgili dizi. |
Mixed | $callable | Uygulanacak işlev. |
Return | Array |
Kullanımı
$arrs = ['a' => 'A', 'b' => 'B'];
$arr = Arrays::forceValues($arrs, function($data)
{
return suffix($data, '+');
});
output($arr);
b => string 'B+' ( length = 4 )
# AddFirst (ZN >= 3.0.0)
Dizinin başına eleman eklemek için kullanılır.
Parametreler
Array | $arr | İ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);
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 | $arr | İ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);
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 | $arr | İ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 => 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 | $arr | İ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));
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 | $arr | İ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']));
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 | $arr | İ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']));
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 | $arr | İ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']));
# RemoveFirst (ZN >= 3.0.0)
Dizinin başından eleman silmek için kullanılır.
Parametreler
Array | $arr | İ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));
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 | $arr | İ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));
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 | $arr | İlgili dizi. |
Mixed | $obj | 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']));
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 | $arr | İ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
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];
output(Arrays::lowerKeys($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];
output(Arrays::titleKeys($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];
output(Arrays::upperKeys($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];
output(Arrays::lowerValues($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];
output(Arrays::titleValues($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz', 'zoo' => 'Zoo'];
output(Arrays::upperValues($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar'];
output(Arrays::lowerCase($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar'];
output(Arrays::titleCase($data));
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 | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar'];
output(Arrays::upperCase($data));
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 | $arr | İ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]);
});
bar - Bar
# Exclude / Excluding (ZN >= 4.0.0)
Dizi içerisinde istenmeyen elemanları yok sayması için kullanılır.
Parametreler
Array | $arr | İ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']) );
# Include / Including (ZN >= 4.0.0)
Dizi içerisinde istenen elemanları alıp diğerlerini yok sayması için kullanılır.
Parametreler
Array | $arr | İ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']) );
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 | $arr | İ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
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 | $arr | İlgili dizi. |
Return | Mixed |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
\Output::writeLine( Arrays::value($data) );
# Key (ZN >= 2.0.0)
Dizinin ilk değerinin anahtarını alır.
Parametreler
Array | $arr | İlgili dizi. |
Return | Mixed |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
\Output::writeLine( Arrays::key($data) );
# Values (ZN >= 2.0.0)
Dizinin değerini alır.
Parametreler
Array | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
output( Arrays::values($data) );
1 => string 'Bar' ( length = 5 ),
2 => string 'Baz' ( length = 5 )
# Keys (ZN >= 2.0.0)
Dizinin anahtarlarını alır.
Parametreler
Array | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
output( Arrays::keys($data) );
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 | $arr | İlgili dizi. |
String | $keySplit = '|' | Anahtar ayracı. |
Return | Array |
Kullanımı
$data = ['foo|zoo|bar' => 'Foo'];
output( Arrays::multikey($data) );
zoo => string 'Foo' ( length = 5 ),
bar => string 'Foo' ( length = 5 )
# Length (ZN >= 3.0.0)
Dizinin kaç elemanlı olduğu bilgisini verir.
Parametreler
Array | $arr | İlgili dizi. |
Return | Int |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
write( Arrays::length($data) );
# Apportion (ZN >= 3.0.0)
Diziyi belirlenen sayıda bölümlere ayırmak için kullanılır.
Parametreler
Array | $arr | İ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 => 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 | $arr | İlgili dizi. |
Array | $otherArray | Birleştirilecek diğer dizi. |
Return | Array |
Kullanımı
$data = ['foo', 'bar'];
$otherData = ['Foo', 'Bar'];
output( Arrays::combine($data, $otherData) );
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 | $arr | İ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') );
# Transform / Flip (ZN >= 3.0.0)
Dizinin anahtarları ile değerlerini yer değiştirmek için kullanılır.
Parametreler
Array | $arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
output( Arrays::transform($data) );
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 | ...$arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo' => 'Foo', 'bar' => 'Bar', 'baz' => 'Baz'];
output( Arrays::implementCallback('strtoupper', $data) );
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 | ...$arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo', 'bar' => ['Bar', 'BAR']];
$data2 = ['baz', 'zoo'];
output( Arrays::recursiveMerge($data, $data2) );
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 | ...$arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo', 'bar'];
$data2 = ['baz', 'zoo'];
output( Arrays::merge($data, $data2) );
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 | ...$arr | İlgili dizi. |
Return | Array |
Kullanımı
$data = ['foo', 'bar', 'baz'];
$data2 = ['baz', 'zoo', 'coo'];
output( Arrays::intersect($data, $data2) );
# Reverse (ZN >= 3.0.0)
Dizinin elemanlarını tersten sıralar.
Parametreler
Array | $arr | İ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) );
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 çarpımını hesaplar.
Parametreler
Array | $arr | İlgili dizi. |
Return | Float |
Kullanımı
$data = [10, 3, 5];
output( Arrays::product($data) );
# Sum (ZN >= 3.0.0)
Dizideki değerlerin toplamını hesaplar.
Parametreler
Array | $arr | İlgili dizi. |
Return | Float |
Kullanımı
$data = [10, 3, 5];
output( Arrays::sum($data) );
# 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 | $arr | İ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') );
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 | $arr | İlgili dizi. |
Mixed | $key | Aranacak anahtar. |
Return | Bool |
Kullanımı
$data = ['foo', 'bar', 'baz'];
output( Arrays::valueExists($data, 'bar') );
# 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 | $arr | İlgili dizi. |
Mixed | $key | Aranacak anahtar. |
Return | Bool |
Kullanımı
$data = ['foo', 'bar' => 'Bar', 'baz'];
output( Arrays::keyExists($data, 'bar') );
# Section (ZN >= 3.0.0)
Diziden kesit almak için kullanılır.
Parametreler
Array | $arr | İ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) );
1 => string 'zoo' ( length = 5 )
# Resection (ZN >= 3.0.0)
Dizinin belli bir kesitini değiştirmek için kullanılır.
Parametreler
Array | $arr | İ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']) );
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 | $arr | İ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) );
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) );
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 | $arr | İ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') );
1 => string 'Bar' ( length = 7 )
output( Arrays::column($records, 'firstName', 'id') );
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 | $arr | İlgili dizi. |
Bool | $preserveKey = true | Anahtarlar korunsun mu?. |
Return | Array |
Kullanımı
$arr = ['foo', ['bar'], ['baz' => 'xoo']];
output( Arrays::unidimensional($arr) );
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 | $arr | İlgili dizi. |
String | $pick | Hangi anahtara sahip değerlerin alınacağı. |
Return | Array |
Kullanımı
$arr =
[
['name' => 'ZN'],
['name' => 'Framework']
];
output( Arrays::pick($arr, 'name') );
1 => string 'Framework' ( length = 11 )
# SearchBetween (Paket[6.16.0][2019-08-17])
Bir dizi içerisinde yer alan başlangıç ve bitiş olarak belirtilen elemanlar arasındaki dizi elemanlarını yakalamak için kullanılır. Bu işlem için birden çok alt yöntemden yararlanılır. Gerek değerden değere, gerekse de anahtardan değere şeklinde bir dizi alt yöntem bulunmaktadır.
Parametreler
Array | $arr | İlgili dizi. |
Mixed | $start | Hangi elemandan başlanacağı. |
Mixed | $end | Hangi elamanda biteceği. |
Return | Array |
Bu kullanımda 2 değer arasında yer alan elemanlar yakalanır.
$arr = ['a', 'b', 'c', 'd', 'e'];
output( Arrays::searchBetween($arr, 'b', 'e') );
1 => d
$arr = ['a', 'b', 'c', 'd', 'e']; output( Arrays::searchBetweenBoth($arr, 'b', 'e') );
0 => b
1 => c
2 => d
3 => e
Bu kullanımda 2 anahtar arasında yer alan elemanlar yakalanır.
$arr = ['a1' => 'a', 'b', 'c', 'd', 'e'];
output( Arrays::searchKeyBetween($arr, 'a1', 2) );
1 => c
$arr = ['a1' => 'a', 'b', 'c', 'd', 'e']; output( Arrays::searchKeyBetweenBoth($arr, 'a1', 2) );
'a1' => 'a'
0 => b
1 => b
2 => c
Bu kullanımda anahtar ile değer yer alan elemanlar yakalanır.
$arr = ['a1' => 'a', 'b', 'c', 'd', 'e'];
output( Arrays::searchKeyToValueBetween($arr, 'a1', 'd') );
1 => c
$arr = ['a1' => 'a', 'b', 'c', 'd', 'e']; output( Arrays::searchKeyToValueBetweenBoth($arr, 'a1', 2) );
'a1' => 'a'
0 => b
1 => c
2 => d
Bu kullanımda değer ile anahtar yer alan elemanlar yakalanır.
$arr = ['a1' => 'a', 'b', 'c', 'd', 'e'];
output( Arrays::searchValueToKeyBetween($arr, 'a', 2) );
1 => c
$arr = ['a1' => 'a', 'b', 'c', 'd', 'e']; output( Arrays::searchValueToKeyBetweenBoth($arr, 'a', 2) );
'a1' => 'a'
0 => b
1 => c
2 => d