Dönüştürücü


    × Bunları biliyor muydunuz?
"Başlangıç kontrolcüsü üzerinden $this nesnesini data olarak göndererek statik olmayan sınıflara ilgili data üzerinden erişebilirsiniz."


Dizgelerde dönüşüm sağlayan yöntemleri barındıran sınıftır. Gerek tür dönüşümü gerekse de çeşitli dizge dönüşümleri yapmak için oluşturulmuştur. İçerisinde fazlası ile işinize yarayacağını düşündüğümüz yöntemler mevcuttur.

 

 

# Kurulum


ZN dağıtımları için kurulum gerekmez.

↓ composer require znframework/package-helpers

 

 

# Yöntemler


Converter::byte(int $bytes, int $precision = 1, bool $unit = true, string $fix = '') : string
Converter::toBytes(float $value) : float
Converter::money(int $money = 0, string $type = NULL, bool $suffix = true) : string
Converter::moneyToNumber(string $money) : float
Converter::time(int $count, string $type = 'second', string $output = 'day') : float
Converter::slug(string $str, bool $protectExtension = false) : string
Converter::word(string $str, mixed $badWords = NULL, $changeChar = '[badwords]') : string
Converter::anchor(string $data, string $type = 'short', array $attributes = NULL) : string
Converter::char(string $str, string $type = 'char', string $changeType = 'html') : string
Converter::accent(string $str) : string
Converter::charset(string $str, string $fromCharset, string $toCharset = 'utf-8') : string
Converter::highLight(string $str, array $settings = [] : string
Converter::toString(mixed $var) : string
Converter::toConstant(mixed $var, string $prefix, string $suffix) : string
Converter::toObjectRecursive(array $arr) : object

 

 

# Byte


Girilen byte miktarını ilgi byte türüne dönüştürür.

Parametreler

int $bytes Sayısal türden bayt miktarı.
int $precision = 1 Ondalıklı bölümün kaç karakter olacağı.
bool $unit = true Tür adı görüntülensin mi?
string $fix = '' 3. parametreye bağlı olarak tür adı ile değer arasına karakter koymak için kullanılır.
return string

Kullanımlar

echo Converter::byte(1000000, 2);
echo Converter::byte(1000000, 1, false);
976.56KB
976.6

[$fix]

Bu parametre 3. parametre ile gösterilen tür ile değer arasında istenilen ifadenin eklenebilmesini sağlanmıştır.

echo Converter::byte(1000000, 2, true, ' ');
echo Converter::byte(1000000, 2, true, '-');
976.56 KB
976.56-KB

 

 

# ToBytes


Kullanımı byte() yönteminden farklı olarak 20MB, 5GB gibi string değerleri byte türüne dönüştürür.

Parametreler

string $value Bayta çevrilecek dizge.
return float

Kullanımlar

echo Converter::toBytes('1KB');
1024

 

 

# Money


Girilen sayıyı para türüne çevirir.

Parametreler

int $money Para biçimine çevrilecek sayısal değer.
string $type = NULL
Para birimi. Birim sona eklenir. Bunu başa almak için parametre değerinin başına ! işareti eklenir.
bool $suffix = true Para biçiminin sonuna ,00 ifadesi ekler. Bu değerin false ayarlanması dışında bu ek görünmez.
return string

Kullanımlar

echo Converter::money(1000000, '£');
1.000.000,00 £

[$suffix = false]

Para biçimi sonunda yer alan virgüllü ifade kaldırılır.

echo Converter::money(1000000, '$', false);
1.000.000

[$type = '!']

Para birimini başa almak için parametrenin başına ünlem ( ! ) işareti eklenir.

echo Converter::money(1000000, '!£');
echo Converter::money(1000000, '!$', false);
£ 1.000.000,00
$ 1.000.000 

 

 

# MoneyToNumber


Converter::money() yöntemi ile çevrilmiş para biçimini float türden sayıya dönüştürür.

Parametreler

string $moneyFormat Para biçimi.
return float

Kullanımlar

echo Converter::moneyToNumber('1.000.000,00');
1000000

 

 

# Time


Girilen sayıyı zaman türüne çevirir.

Parametreler

int $count Sayı.
string $inputType = 'second' Girilen zaman türü.
string $outputType = 'day' Dönüştürülen zaman türü.
return float

Kullanımlar

output( Converter::time(120, 'second', 'minute') );
output( Converter::time(120, 'day', 'month') );
output( Converter::time(12, 'month', 'year') );
2
4

 

 

# Slug


Bir dizgeyi URL yapısına uygun forma çevirir.

Parametreler

string $data Çevrilecek dizge.
bool $protectExtension = false Uzantı korunsun mu? Dosya isimlerinde sadece isim bölümünün çevrilmesinde kullanılır.
return string

Kullanımlar

output( Converter::slug('Welcome to ZN') );
welcome-to-zn

[$protectExtension = true]

Eğer slug haline getirilecek olan veri bir dosya bilgisi içeriyorsa ve sadece dosya adının çevrilmesi gerekiyorsa 2. parametreden yararlanılır.

output( Converter::slug('Example File.php', true) );
example-file.php

Yukarıda görüldüğü gibi çeviri sadece isim bölüme yapılmış uzantı değiştirilmemiştir.

[$protectExtension = false]

Aksi halde aşağıdaki gibi bir çıktı oluşturdu.

output( Converter::slug('Example File.php') );
example-file-php

 

 

# Word


Veride istenmeyen karakterlerin dönüştürülmesi sağlanır.

Parametreler

string $word Dönüştürme işlemi uygulanacak veri.
mixed $badWords = NULL İstenmeyen kelimeler.
mixed $changeCar = '[badwords]' İstenmeyen karakterlerin yerine gelecek olan dizge veya dizi.
return string

Kullanımlar

output( Converter::word('Hi, ? Guys', '?') );
output( Converter::word('Hi, ? Guys', [',', '?']) );
output( Converter::word('Hi, ? Guys', [',', '?'], ['x', 'y']) ); 
Hi, [badwords] Guys
Hi[badwords] [badwords] Guys
Hix y Guys 

 

 

# Anchor


Link dizgesini HTML <a> etiketine dönüştürmek için kullanılır.

Parametreler

string $data Köprüye dönüştürülecek veri.
string $type = 'short' Görünüm linkinin uzunluğu.
short Linkin görünümüne isim vermek için kullanılır.
long Linkin görünümü href değeri ile aynı görüntülenir.
array $attributes = [] Özellik değer çifti.
return string

Kullanımlar

output( Converter::anchor('https://www.znframework.com', 'short', ['id' => 'convert']) );
output( Converter::anchor('https://www.znframework.com', 'long', ['id' => 'convert']) );
<a href="https://www.znframework.com" id="convert">znframework</a>
<a href="https://www.znframework.com" id="convert">https://www.znframework.com</a>

 

 

# Char


Karakterleri html, decimal veya hexdecimal karakter biçimine dönüştürmek için kullanılır.

Parametreler

string $data Çevrilecek karakterler.
string $inputType = 'char' Girdi türü.
string $outputType = 'html' Çıktı türü.
return string

Dönüştürülebilir Türler

char Normal karakter.
html HTML numeric karakter formatı.
dec Decimal karakter formatı.
hex Hexdecimal karakter formatı.

Kullanımlar

output( Converter::char('Example Data') );
output( Converter::char('Example Data', 'char', 'dec') );
output( Converter::char('Example Data', 'char', 'hex') );
&#69;&#120;&#97;&#109;&#112;&#108;&#101; &#68;&#97;&#116;&#97;
69 120 97 109 112 108 101 68 97 116 97
45 78 61 6D 70 6C 65 44 61 74 61 

 

 

# Accent


Farklı dillerdeki aksan farklılıklarından oluşan karakterleri standart karakter biçimine çevirir. 

Parametreler

string $data Çevrilecek dizge.
return string

Kullanımlar

echo Converter::accent('Åççeňt');
Accent

Aksan Karakter Kümesinin Genişletilmesi

Sistemde ön tanımlı çevrimler dışında kendi karakter kümenizi ilave etmek için aşağıdaki dosyada yer alan accentChars dizisini genişletebilirsiniz.

Dosya: Settings/Expressions.php

 

 

# Charset


Dizgenin karakter setini değiştirmek için kullanılır.

Parametreler

string $data Veri.
string $fromCharset Hangi karakter setinden.
string $toCharset = 'utf-8' Hangi karakter setine.
return string

Kullanımlar

echo Converter::charset('Åççeňt', 'UTF-8', 'JIS');
テ?テァテァeナ?t 

 

 

# HighLight


PHP dizgesini renkli kodlara dönüştürür.

Parametreler

string $data Sabite dönüştürülecek veri.
array $settings Ayarlar.
php:family PHP font türü.
php:size PHP font boyutu.
php:style PHP stil kullanımı.
html:family HTML font türü.
html:size HTML font boyutu.
html:color HTML font rengi.
html:style HTML stil kullanımı.
comment:color Açıklama satırı rengi.
comment:style Açıklama satırı stil kullanımı.
default:color Varsayılan renk.
default:style Varsayılan stiller.
keyword:color Anahtar kelimelerin rengi.
keyword:style Anahtar kelimelerin stili.
string:color Dizge rengi.
string:style Dizge stil kullanımı.
background Arkaplan stil kullanımı.
tags PHP tagları stil kullanımı
return string

Kullanımlar

echo Converter::highLight('<?php echo $variable;');
<?php echo $variable

 

 

# Tostring


Veriyi dizge türe çevirir.

Parametreler

mixed $data Dizgeye dönüştürülecek veri.
return string

Kullanımlar

echo Converter::toString(['Z', 'N']);
Z N

 

 

# ToConstant


Veriyi sabite dönüştürür. Harf duyarlılığı yoktur.

Parametreler

mxied $data Sabite dönüştürülecek veri.
string $prefix Ön ek.
string $suffix Son ek.
return mixed

Kullanımlar

output( Converter::toConstant('PHP_VERSION') );         # PHP_VERSION
output( Converter::toConstant('VERSION', 'PHP_') );     # PHP_VERSION
output( Converter::toConstant('VER', 'PHP_', 'SION') ); # PHP_VERSION
output( Converter::toConstant('phpVersion') );          # PHP_VERSION
7.0.8
7.0.8
7.0.8 
7.0.8

 

 

# ToObjectRecursive


Her türlü diziyi objeye çevirir. Dizi çok boyutlu olabilir.

Parametreler

array $data Dizi.
return object

Kullanımlar

$obj = Converter::toObjectRecursive(['foo' => ['bar' => 'Bar']]);

echo $obj->foo->bar;
Bar