Dönüştürücü


    × Bunları biliyor muydunuz?
"Ajax işleminde 'url' parametresi doğru yol bilgisi için URL::site('controller/method') biçiminde ifade edilmelidir. "


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 SE ve ZN CE dağıtımları için terminal kurulum komutu.

↓ composer require znframework/package-helpers

 

 

# Yöntemler


String byte(Int $bytes, Int $precision = 1, Bool $unit = true)
Float toBytes(Float $value)
String money(Int $money = 0, String $type = NULL)
Float moneyToNumber(String $money)
Float time(Int $count, String $type = 'second', String $output = 'day')
String word(String $string, Mixed $badWords = NULL, $changeChar = '[badwords]')
String anchor(String $data, String $type = 'short', Array $attributes = NULL)
String char(String $string, String $type = 'char', String $changeType = 'html')
String accent(String $str)
String urlWord(String $str, String $splitWord = '-')
String slug(String $str, Bool $protectExtension = false)
String stringCase(String $str, String $type = 'lower', String $encoding = 'utf-8')
Array arrayCase(Array $array, String $type = 'lower', String $keyval = 'all')
String charset(String $str, String $fromCharset, String $toCharset = 'utf-8')
String highLight(String $str, Array $settings = []
String toString(Mixed $var)
String toConstant(Mixed $var, String $prefix, String $suffix)

 

 

# Byte (ZN >= 4.0.1-EIP)


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?
Return String

Kullanımlar

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

 

 

# ToBytes (ZN FE 5.5.9)


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 (ZN >= 4.0.1-EIP)


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

Parametreler

Int $money Para biçimine çevrilecek sayısal değer.
String $type = NULL Para birimi. (ZN >= 5.3.9) Birim sona eklenir. Bunu başa almak için parametre değerinin başına ! işareti eklenir.
Return String

Kullanımlar

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

Param Birimini Başa Almak (ZN >= 5.3.9)

Bunun için 2. parametrenin başına ünlem(!) işareti eklenir.

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

 

 

# MoneyToNumber (ZN >= 5.2.0)


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

Parametreler

String $money Sayısal biçime çevrilecek para biçimli veri.
Return Float

Kullanımlar

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

 

 

# Time (ZN >= 4.0.1-EIP)


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::writeLine( Converter::time(120, 'second', 'minute') );
\Output::writeLine( Converter::time(120, 'day', 'month') );
\Output::writeLine( Converter::time(12, 'month', 'year') );
2
4

 

 

# Word (ZN >= 4.0.1-EIP)


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::writeLine( Converter::word('Hi, ? Guys', '?') );
\Output::writeLine( Converter::word('Hi, ? Guys', [',', '?']) );
\Output::writeLine( Converter::word('Hi, ? Guys', [',', '?'], ['x', 'y']) ); 
Hi, [badwords] Guys
Hi[badwords] [badwords] Guys
Hix y Guys 

 

 

# Anchor (ZN >= 4.0.1-EIP)


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::writeLine( Converter::anchor('https://www.znframework.com', 'short', ['id' => 'convert']) );
\Output::writeLine( 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 (ZN >= 4.0.1-EIP)


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::writeLine( Converter::char('Example Data') );
\Output::writeLine( Converter::char('Example Data', 'char', 'dec') );
\Output::writeLine( 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 (ZN >= 4.0.1-EIP)


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

 

 

# UrlWord (ZN >= 4.0.1-EIP)


Cümle yapılarını URL yapısına uygun cümle yapısına çevirir.

Parametreler

String $data Çevrilecek dizge.
String $split = '-' Birleştirici ifade.
Return String

Kullanımlar

\Output::writeLine( Converter::urlWord('Welcome to ZN') );
\Output::writeLine( Converter::urlWord('Welcome to ZN', '/') );
welcome-to-zn
welcome/to/zn 

 

 

# Slug (ZN >= 4.4.9)


Bu işlem için urlWord() yöntemi de kullanılabilir. Ancak bu yöntemi urlWord() yönteminden ayıran kısmı 2. ayırıcı karakterlerin seçilememesidir. Yani türm kelimeler arasına -(tire) sembolü ekler. Aynı zamanda bu yöntem urlWord() yönteminin aksine tüm özel karakterleri yok sayar.

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::writeLine( Converter::slug('Welcome to ZN') );
welcome-to-zn

Uzantıyı Koruma (ZN >= 5.4.25)

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::writeLine( 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.

 

 

# StringCase (ZN >= 4.0.1-EIP)


Büyük metinsel ifadeleri küçük, büyük veya sadece ilk harfini büyük harfe dönüştürmek için kullanılır.

Parametreler

String $data Çevrilecek dizge.
String $type = 'lower' Hangi türe çevrileceği belirtilir.
lower Tüm dizgeyi küçük harfe çevirir.
upper Tüm dizgeyi büyük harfe çevirir.
title Tüm dizgede her bir kelimenin ilk harfini büyük geri kalanını küçük harfe dönüştürür.
Return String

Kullanımlar

\Output::writeLine( Converter::stringCase('Welcome to ZN') );
\Output::writeLine( Converter::stringCase('Welcome to ZN', 'upper') );
\Output::writeLine( Converter::stringCase('Welcome to ZN', 'title') );
welcome to zn
WELCOME TO ZN
Welcome To Zn 

 

 

# ArrayCase (ZN >= 4.0.1-EIP)


Dizi elemanlarında büyük - küçük harf dönüşümü yapmak için kullanılır. Bu işlem ister dizi anahtarlarında ister dizi elemanlarında isterseniz de her ikisinde yapılabilir.

Parametreler

Array $data Dizi.
String $type = 'lower' Tür.
lower Elemanları küçük harfe çevir.
upper Elemanları büyük harfe çevir.
title Elemanların sadece ilk harfini büyük geri kalanı küçük  harfe çevir.
String $keyval = 'all' Dönüşümden etkilenenler.
all Hem anahtarlar hem değerler çevrimden etkilenir.
key Sadece anahtarlar çevrimden etkilenir.
value Sadece değerler çevrimden etkilenir.
Return Array

Kullanımlar

output( Converter::arrayCase(['Hello' => 'Guys'], 'upper', 'all') );
output( Converter::arrayCase(['Hello' => 'Guys'], 'upper', 'value') );
output( Converter::arrayCase(['Hello' => 'Guys'], 'title', 'key') ); 
HELLO => string 'GUYS' ( length = 6 )
Hello => string 'GUYS' ( length = 6 )
Hello => string 'Guys' ( length = 6 )

 

 

# Charset (ZN >= 4.0.1-EIP)


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 (ZN >= 4.0.1-EIP)


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  (ZN >= 4.0.1-EIP)


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(ZN >= 4.0.1-EIP)


Veriyi sabite dönüştürür.

Parametreler

Mixed $data Sabite dönüştürülecek veri.
String $prefix Ön ek.
String $suffix Son ek.
Return Mixed

Kullanımlar

\Output::writeLine( Converter::toConstant('PHP_VERSION') );
\Output::writeLine( Converter::toConstant('VERSION', 'PHP_') );
\Output::writeLine( Converter::toConstant('VER', 'PHP_', 'SION') ); 
7.0.8
7.0.8
7.0.8