PHPackages                             teknomavi/tcmb - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. teknomavi/tcmb

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

teknomavi/tcmb
==============

T.C. Merkez Bankası üzerinden güncel döviz kurlarını çeker

v1.0.4(5y ago)7019.2k↓30.8%12[6 issues](https://github.com/teknomavi/tcmb/issues)MITPHPPHP &gt; 5.4CI failing

Since Feb 12Pushed 4y ago5 watchersCompare

[ Source](https://github.com/teknomavi/tcmb)[ Packagist](https://packagist.org/packages/teknomavi/tcmb)[ Docs](https://github.com/teknomavi/tcmb)[ RSS](/packages/teknomavi-tcmb/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (5)Dependencies (4)Versions (6)Used By (0)

T.C. Merkez Bankası Kur Kütüphanesi [![Build Status](https://camo.githubusercontent.com/0ea0b17203c767ece0fcf8f06c2ae199216a82fdfee81e65afd8322fdc72d2a2/68747470733a2f2f7472617669732d63692e6f72672f74656b6e6f6d6176692f74636d622e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/teknomavi/tcmb)
=============================================================================================================================================================================================================================================================================================================

[](#tc-merkez-bankası-kur-kütüphanesi-)

Teknomavi\\Tcmb Nedir?
----------------------

[](#teknomavitcmb-nedir)

T.C. Merkez Bankası tarafından  adresinde yayınlanan güncel döviz kurlarını okumak için kullanılan açık kaynak bir PHP kütüphanesidir.

Neler Yapılabilir?
------------------

[](#neler-yapılabilir)

Bu kütüphane ile günlük döviz kurları otomatik olarak çekilmektedir. TCMB sitesinde yayınlanan tüm kurlar için mevcut "Alış", "Satış", "Efektif Alış" ve "Efektif Satış" değerlerine ulaşabilirsiniz.

Nasıl Kullanılır?
-----------------

[](#nasıl-kullanılır)

Teknomavi\\Tcmb Composer ile kurulabilir. Projenizdeki `composer.json` dosyasında `require` bölümüne `"teknomavi/tcmb": "dev-master"` eklemeniz ve `composer update` komutunu çalıştırmanız yeterlidir.

Dilerseniz aşağıdaki komutu da çalıştırabilirsiniz.

```
composer require teknomavi/tcmb
```

Composer kurulumu/kullanımı hakkında bilgiye ihtiyacınız varsa [bu bağlantıdaki](http://www.teknomavi.com/yazilim/php/composer-paket-yoneticisi-nedir-nasil-kurulur-nasil-kullanilir/) dökümanı incelebilirsiniz.

### Örnek Kod

[](#örnek-kod)

Kütüphanenin en temel kullanımı aşağıdaki gibidir;

```
use Teknomavi\Tcmb\Doviz;
$doviz = new Doviz();
echo " USD Alış:" . $doviz->kurAlis("USD");
echo " USD Satış:" . $doviz->kurSatis("USD");
echo " EURO Efektif Alış:" . $doviz->kurAlis("EUR", Doviz::TYPE_EFEKTIFALIS);
echo " EURO Efektif Satış:" . $doviz->kurSatis("EUR", Doviz::TYPE_EFEKTIFSATIS);
```

Sıkça Sorulan Sorular
---------------------

[](#sıkça-sorulan-sorular)

### Kütüphanenin Her Seferinde TCMB Üzerinden Data Çekmesi Nasıl Engellenir?

[](#kütüphanenin-her-seferinde-tcmb-üzerinden-data-çekmesi-nasıl-engellenir)

TCMB Sitesinden çekilen veriler, sınıfı oluştururken vereceğiniz bir `Doctrine\Common\Cache\CacheProvider` üzerinde tutulabilir. Bu sayede her seferinde TCMB sitesinden çekilmeyeceği için performans artışı sağlanabilir. Doctrine Cache hakkında detaylı bilgiye [buradan](http://doctrine-orm.readthedocs.org/en/latest/reference/caching.html) ulaşabilirsiniz.

Örnek: Doctrine Memcache CacheProvider ile kullanımı

```
use Teknomavi\Tcmb\Doviz;

// Doctrine Memcache Init
$memcache = new Memcache();
$memcache->connect('localhost', 11211);
$cacheDriver = new \Doctrine\Common\Cache\MemcacheCache();
$cacheDriver->setMemcache($memcache);
// Doviz Kütüphanesi
$doviz = new Doviz($cacheDriver);
echo " USD Alış:" . $doviz->kurAlis("USD");
echo " USD Satış:" . $doviz->kurSatis("USD");
echo " EURO Efektif Alış:" . $doviz->kurAlis("EUR", Doviz::TYPE_EFEKTIFALIS);
echo " EURO Efektif Satış:" . $doviz->kurSatis("EUR", Doviz::TYPE_EFEKTIFSATIS);
```

### Doctrine\\Common\\Cache\\CacheProvider harici bir önbellek yapısı kullanıyorum. Ne yapabilirim?

[](#doctrinecommoncachecacheprovider-harici-bir-önbellek-yapısı-kullanıyorum-ne-yapabilirim)

Sınıfın oluşturduğu data değişkenini `getData()` fonksiyonu kendiniz saklayıp, tekrar kullanacağınızda `setData($data)` fonksiyonu ile sınıfa tekrar verebilirsiniz.

Örnek: `json_encode`/`json_decode` ile önbelleğin bir dosyada tutulması

```
$doviz = new \Teknomavi\Tcmb\Doviz();
// Cache Kodları Başlangıç
$fileName = dirname(__FILE__) . "/data.json";
if (file_exists($fileName)) {
    $data       = json_decode(file_get_contents($fileName), true);
    $cacheValid = $doviz->setData($data);
} else {
    $cacheValid = false;
}
if (!$cacheValid) {
    file_put_contents($fileName, json_encode($doviz->getData()));
}
// Cache Kodları Bitiş
echo " USD Alış:" . $doviz->kurAlis("USD");
echo " USD Satış:" . $doviz->kurSatis("USD");
echo " EURO Efektif Alış:" . $doviz->kurAlis("EUR", \Teknomavi\Tcmb\Doviz::TYPE_EFEKTIFALIS);
echo " EURO Efektif Satış:" . $doviz->kurSatis("EUR", \Teknomavi\Tcmb\Doviz::TYPE_EFEKTIFSATIS);
```

Örnek: Laravel kullanarak `json_encode`/`json_decode` ile önbelleğin bir dosyada tutulması

```
use Storage;

$doviz = new Doviz();

// Cache Kodları Başlangıç
$path = 'doviz-cache/doviz.json';
if (Storage::exists($path)) {
     $data = json_decode(Storage::get($path), true);
     $cache_valid = $doviz->setData($data);
} else {
     $cache_valid = false;
}
if (!$cache_valid) {
     Storage::put($path, json_encode($doviz->getData()));
}
// Cache Kodları Bitiş

echo " USD Alış:" . $doviz->kurAlis("USD");
echo " USD Satış:" . $doviz->kurSatis("USD");
echo " EURO Efektif Alış:" . $doviz->kurAlis("EUR", \Teknomavi\Tcmb\Doviz::TYPE_EFEKTIFALIS);
echo " EURO Efektif Satış:" . $doviz->kurSatis("EUR", \Teknomavi\Tcmb\Doviz::TYPE_EFEKTIFSATIS);
```

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance18

Infrequent updates — may be unmaintained

Popularity41

Moderate usage in the ecosystem

Community16

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 91.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~492 days

Total

5

Last Release

2146d ago

PHP version history (2 changes)v1.0.0PHP &gt; 5.3.0

v1.0.3PHP &gt; 5.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/10796023?v=4)[Teknomavi Danışmanlık](/maintainers/Teknomavi)[@teknomavi](https://github.com/teknomavi)

---

Top Contributors

[![GoktugOzturk](https://avatars.githubusercontent.com/u/1000956?v=4)](https://github.com/GoktugOzturk "GoktugOzturk (42 commits)")[![ozgurg](https://avatars.githubusercontent.com/u/6717356?v=4)](https://github.com/ozgurg "ozgurg (3 commits)")[![orhanerday](https://avatars.githubusercontent.com/u/22305274?v=4)](https://github.com/orhanerday "orhanerday (1 commits)")

---

Tags

currencytcmbdovizkur

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/teknomavi-tcmb/health.svg)

```
[![Health](https://phpackages.com/badges/teknomavi-tcmb/health.svg)](https://phpackages.com/packages/teknomavi-tcmb)
```

###  Alternatives

[brick/money

Money and currency library

1.9k37.9M102](/packages/brick-money)[florianv/swap

Exchange rates library for PHP

1.3k6.4M16](/packages/florianv-swap)[cknow/laravel-money

Laravel Money

1.0k4.3M22](/packages/cknow-laravel-money)[akaunting/laravel-money

Currency formatting and conversion package for Laravel

7825.3M18](/packages/akaunting-laravel-money)[webpatser/laravel-countries

Modern Laravel Countries package providing ISO 3166-2, ISO 3166-3, currency, capital and more for all countries. Compatible with Laravel 11.x and 12.x.

8272.8M8](/packages/webpatser-laravel-countries)[kwn/number-to-words

Multi language standalone PHP number to words converter. Fully tested, open for extensions and new languages.

4235.0M21](/packages/kwn-number-to-words)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
