İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Karakter Bölme

nedim_turk

0
İyinet Üyesi
Katılım
31 Aralık 2003
Mesajlar
24
Reaction score
0
Selam
örneğin $yazi adında bir değerim var bu değer 240 karakter yazı içermekte ben bu $yazi değerini 2 ayrı değere bölmek istiyorum yanı $yazi değerinin ilk 120 karakterini $birsey değerine kalan 120 karakterinide $ikisey değerine nasıl bölebilirim :?: .teşekkürler :? [/b]
 
B

burak

Misafir
Eger 240 karakter sabit ise unpack fonksiyonu en ideal cozum:

$yazi="dadasdasdsad...."; // 240 karakter olmak zorunda
list($birsey,$ikisey) = unpack("A120birsey/A120ikisey",$yazi);

Eger $yazi nin boyu degisken ise, substr fonksiyonunu kullanman uygun olur :wink:
 

nedim_turk

0
İyinet Üyesi
Katılım
31 Aralık 2003
Mesajlar
24
Reaction score
0
Teşekkürler, substr fonksiyonunu da gösterirmisin :?: bana :)
 
B

Brandon

Misafir
Benim aklıma şöyle birşey geldi; biraz uzun olabilir ama işe yarar;

<?
$str = "when summers gone and winters past, it's seems like neverending way..."; //--Stringimiz
$boy = strlen($str); //-- Kaç karakter oldugunu buluyoruz.
$yarisi = floor($boy/2) /*-- Karakter dizimizin boyu tek sayi olabilir. Bunu gözönünde bulundrumak zorundayiz o yüzden asagi yuvarlama yaparak boy degerinin yarisini buluyoruz. */

$birinci = substr("$str", 0, $yarisi);
$ikinci = substr("$str", $yarisi+1, $boy);

// Bu kadar. Simdi ekrana istedigin formatta yazabilirsin mesela :

print "Birinci kisim : $birinci
İkinci Kisim : $ikinci";
?>

Dediğim gibi istedin ise gore uzun olabilir. Belki daha kisa yazma yöntemi vardir ama bu benim aklima ilk gelen ve EN SAGLIKLI (her stringle calisacak) bir script. Eğer hala sorun varsa mail at cevap vermeye calisirim...

[email protected]
 
B

Brandon

Misafir
Birşey daha;
sorunu tekrar okudum da; bu olayı sen bir sitenin haber yada makale - yazı v.s. bölümünde kullanıp, o bölümün ana sayfasında stringin (yada textin) bir kismin,i gösterip altına da "Haberin-Yazının Devamı..." şeklinde link koymak için kullanmayı düşünüyorsan direk olarak sabit bir karakter sayısı belirleyip substr() ile 2-3 satırda işi bitirirsin. Mesela sabit sayın 300 olsun,

$sabitimiz = 300;
$yazimiz = "abc bilmemne hebele............";
$yazininilkbolumu = substr($yazimiz, 0, 300);
print "$yazininilkbolumu";

diyerek olayı bitirirsin. Ama sadece tahmin yürüttüm, tam olarak ne istediğini daha açık belirtirsen daha fazla ya da farklı çözüm bulma ihtimalin var...

Sevgiler...
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst