Yii2 urlManager

config/main.php dosyasında bulunan UrlMaanger componenti ile Yii projelerinizde görünen Url yapınızı biçimlendirebilirsiniz.
basit haliyle :

‘urlManager’ => [

‘enablePrettyUrl’ => true,
‘showScriptName’ => false,

],

Burada yaptıgımız işlemler;

‘enablePrettyUrl’ => true,

Pretty url yi etkinleştimek : sadece bu işlemi yaptıgınızda projenizde var olan linklere tıkladıgınızda “?r=site/about” şeklinde değil “/site/about” şeklinde yönlendirilmeye başladığını göreceksiniz.

ancak bazı yönlendirmeler hala çalışmıyor:

çözümü için “web/” dizininde yeni bir “.htaccess” dosyası oluştuyoruz.

ve içeriği:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?r=$1 [L,QSA]

ve artık linklerimiz çalışıyor.

ancak id veya parametre içeren sayfalara gittiğinizde hala “/user/update?id=2” urller görüyoruz. Hadi bunları da yönlendirelim,

bunun için yine config/main.php dosyamıza gidelim ve rules kısmına;

‘urlManager’ => [
‘enablePrettyUrl’ => true,
‘showScriptName’ => false,
‘rules’ => [

&#8216;<controller:\w+>/<id:\d+>&#8216;=>&#8217;<controller>/view&#8217;,
&#8216;<controller:\w+>/<action:\w+>/<id:\d+>&#8216;=>&#8217;<controller>/<action>&#8216;,
&#8216;<controller:\w+>/<action:\w+>&#8216;=>&#8217;<controller>/<action>&#8216;,

],
],

şeklinde ekleyelim.

artık urllerimiz sağlıklı çalışıyor.

Composer Kurulumu ve Kullanımı (macOs)

Composer; php uygulamaları ve uygulama içerisinde kullanılan kütüphaneler için bağımlılık yönetimi sağlayan bir paket yöneticisidir.

Composer Nasıl Kurulur (macOs)

php -r “copy(‘https://getcomposer.org/installer’, ‘composer-setup.php’);”

Composer-setup.php dosyasını indirdik, çalıştıralım;

php composer-setup.php

sonuç:

All settings correct for using Composer
Downloading…

Composer (version 2.1.12) successfully installed to: /Users/userfilename/composer.phar
Use it: php composer.phar

Evet Compposer başarıyla yüklendi.

php composer.phar –version

komutuyla versiyon teyidi yapabilirsiniz.

Composer version 2.1.12 2021-11-09 16:02:04

çıktısıyla işlemin başarılı oldugunu teyid ettik.

İndirdiğimiz dosyayı temizleyebiliriz:

php -r “unlink(‘composer-setup.php’);”

ancak hala composer komutu ile global olarak çalıştıtramıyoruz. Bunun için ;

mv composer.phar /usr/local/bin/composer

komutuyla dosyamızı taşıyoruz.

“/usr/local/bin/” dosyanız henüz yoksa bu adımda

mv: rename composer.phar to /usr/local/bin/composer: No such file or directory

şeklinde bir hata ile karşılaşıyorsanız;

sudo mkdir -p /usr/local/bin

komutu ile ilgili dizini oluşturabilirsiniz. ve tekrar

mv composer.phar /usr/local/bin/composer

komutunu çalıştırmayı deneyebilirsiniz.

işlem başarılı ise

composer

yazdığınızda çalışacaktır.

Php mb_convert_encoding fonksiyonu ve türkçe karakter düzeltme

Projelerde özellikle farklı dosya tiplerinden (excel, csv) veri okuyup yazdığımız veya farklı veritabanından veri aktarırken sık karşılaşılan problemlerden birisi de Türkçe karakter hatasıdır.
Bunun birçok çözüm yolu mevcuttur, eğer veritabından çektiğiniz verilerde türkçe karakter sorunu yaşıyorsanız mysql bağlantınıza charset set etmek, php dosyanıza header content-type eklemek bunlardan bazılarıdır. Ancak zaman olur ki herşey yapılmışken hala bazı verilerinizde türkçe karakterler bozuk gözükür buna örnek olarak “ş” karfi düzgün gözükürken “Ö” harfi hatalı karakter olarak gelebilmektedir.
Devamı