Severity: 8192
Message: Return type of CI_Session_files_driver::open($save_path, $name) should either be compatible with SessionHandlerInterface::open(string $path, string $name): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice
Filename: drivers/Session_files_driver.php
Line Number: 113
Severity: 8192
Message: Return type of CI_Session_files_driver::close() should either be compatible with SessionHandlerInterface::close(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice
Filename: drivers/Session_files_driver.php
Line Number: 280
Severity: 8192
Message: Return type of CI_Session_files_driver::read($session_id) should either be compatible with SessionHandlerInterface::read(string $id): string|false, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice
Filename: drivers/Session_files_driver.php
Line Number: 145
Severity: 8192
Message: Return type of CI_Session_files_driver::write($session_id, $session_data) should either be compatible with SessionHandlerInterface::write(string $id, string $data): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice
Filename: drivers/Session_files_driver.php
Line Number: 223
Severity: 8192
Message: Return type of CI_Session_files_driver::destroy($session_id) should either be compatible with SessionHandlerInterface::destroy(string $id): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice
Filename: drivers/Session_files_driver.php
Line Number: 303
Severity: 8192
Message: Return type of CI_Session_files_driver::gc($maxlifetime) should either be compatible with SessionHandlerInterface::gc(int $max_lifetime): int|false, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice
Filename: drivers/Session_files_driver.php
Line Number: 344
Severity: 8192
Message: setcookie(): Passing null to parameter #7 ($httponly) of type bool is deprecated
Filename: core/Input.php
Line Number: 410
substr() fonksiyonu stringin belirli bir kısmını döndürmek için kullanılır. Açıkçası kullanımı biraz karışıktır çünkü aldığı pozitif ve negatif değerlere göre farklı işlem uygular. Kullanım yerine göre 2 veya 3 parametre alır. Örneklerle açıklamaya çalışalım.
Syntax
substr(string,start,length)
string: Zorunludur. String tanımlanır.
start: Zorunludur. Stringin neresinden başlanacağını belirtir. Pozitif veya negatif değer alabilir.
length: İsteğe bağlıdır. Dönecek kısmın uzunluğunu belirtir. Pozitif veya negatif değer alabilir.
Not: 2 parametre ya da 3 parametreli kullanımı ile pozitif ya da negatif değer almasına göre fonksiyon farklı çalışır.
Not: substr() fonksiyonu Türkçe karakterlerde sıkıntı oluşturur. Bu yüzden aynı işlevi gören fakat çok baytlı olan mb_substr() fonksiyonunu kullanmalısınız ve kullanmadan önce de en başa şu kodu eklemelisiniz.
mb_internal_encoding("UTF-8");
// UTF-8 yazan yer karakter kodlamasıdır
Not: 4. ve 6. örneklerde göreceğiniz 3. parametresi negatif olan değerler için kısayol; 2 değer arasında kalan kısmı alın.
Örnek 1)
Baştaki T 0. karakterdir, soldan sağa doğru 5. karaktere gider ve 5. karakter dahil olmak üzere geri kalan kısmı yazdırır.
<?php
echo substr("Test Ediyoruz",5);
// Çıktı: Ediyoruz
?>
Örnek 2)
Sondaki z 1. karakter olmak üzere sondan başlayarak sola doğru 4 karakter yazdırır
<?php
echo substr("Test Ediyoruz",-4);
// Çıktı: oruz
?>
Örnek 3)
Sonraki z 1. karakter olmak üzere sondan başlayarak sola doğru 4. karaktere gider ve 4. karakterden itibaren sağa doğru 3 karakter yazdırır.
<?php
echo substr("Test Ediyoruz",-4,3);
// Çıktı: oru
?>
Örnek 4)
Sondaki z 1. karakter olmak üzere sondan başlayarak sola doğru 4. karaktere gider ve yine sonran başlayarak sola doğru 3. karaktere gider, arada kalan kısmı yazdırır.
<?php
echo substr("Test Ediyoruz",-4,-3);
// Çıktı: o
?>
Örnek 5)
Baştaki T 0. karakterdir, soldan sağa doğru 5. karaktere gider ve 5. karakter dahil olmak üzere soldan sağa doğru 2 karakter yazdırır.
<?php
echo substr("Test Ediyoruz",5,2);
// Çıktı: E
?>
Örnek 6)
Sondaki z 1. karakter olmak üzere sondan başlayarak sola doğru 2. karaktere gider, baştaki T 0. karakter olmak üzere soldan başlayarak soldan sağa doğru 5. karaktere gider, arada kalan kısmı yazdırır.
<?php
echo substr("Test Ediyoruz",5,-2);
// Çıktı: Ediyor
?>
Örnek 7)
Türkçe karakterler mb_substr() fonksiyonu ile problemsiz yazdırılabilir.
<?php
mb_internal_encoding("UTF-8");
echo mb_substr("Deneme Yazısı",4);
// Çıktı: me Yazısı
?>
YORUMLAR