wmaraci reklam

PHP'de bir değere sayı ekleme

6 Mesajlar 1.419 Okunma
smmexpress

kaanst kaanst Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 28.02.2018
  • Yaş/Cinsiyet 28 / E
  • Meslek Web Developer
  • Konum İstanbul Avrupa
  • Ad Soyad K** S**
  • Mesajlar 669
  • Beğeniler 435 / 160
  • Ticaret 31, (%94)
Merhaba arkadaşlar,
Benim daha önce başıma gelmiş ve kendi mantığımla çözmüş olduğum herkesin zaman içerisinde karşılaşması muhtemel bir durumu anlatacağım.

Hatırlarsanız ondalık sayı belirtirken 1.5, 2.6, 3.7, 5.4 şeklinde belirtiyorduk. Buraya kadar tamam fakat stringe sayı eklerken bu sorun oluşturuyordu.

Örneğin:

$variable = "Sınıftaki öğrenci sayısı: ".30;


Diye değer atarsanız hata alırsınız. İsterseniz deneyebilirsiniz. Peki hata nerede? Bakın dediğim gibi ondalık değer atarken de örneğin 1.5 şeklinde yapıyorduk. Buradaki nokta işareti sıkıntı çıkartıyor. PHP kodları okurken, [font=Courier New]...sayısı: ".30[/font] kısmınını ondalık değer olarak algılıyor.

Bunun şu şekilde yaparak çözdüm. Sayının başına ve sonuna parantez ekleyin.

Örnek:

$variable = "Sınıftaki öğrenci sayısı: ".(30);


Bu şekilde yaparsanız sorunsuz şekilde çalışacaktır.

Yukarıda ne dediğimi anlatabilmişimdir umarım.
Teşekkürler, kolay gelsin.
 

 

wmaraci
reklam

ikodev ikodev Developer Kullanıcı
  • Üyelik 08.05.2015
  • Yaş/Cinsiyet 28 / E
  • Meslek Developer
  • Konum Samsun
  • Ad Soyad İ** Ş**
  • Mesajlar 1020
  • Beğeniler 321 / 320
  • Ticaret 19, (%100)
Öncelikle kolay gelsin hocam.

$variable = "Sınıftaki öğrenci sayısı: ".30;
Bu satırda zaten mantıken sayıyı siz belirlemişsiniz. Yani bunun yerine,
$variable = "Sınıftaki öğrenci sayısı: 30";
Da yapabilirsiniz.. Ama dışarıdan dinamik bir veri alacaksanız,

$sayi = 30;
$variable = "Sınıftaki öğrenci sayısı: " . $sayi;


Kullanımı bu şekilde olması yeterlidir. Kolay gelsin :angel:
 

 

kaanst kaanst Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 28.02.2018
  • Yaş/Cinsiyet 28 / E
  • Meslek Web Developer
  • Konum İstanbul Avrupa
  • Ad Soyad K** S**
  • Mesajlar 669
  • Beğeniler 435 / 160
  • Ticaret 31, (%94)
Doğru ama bazen integer olarak eklenmesi gereken durumlar olabilir hocam aklıma örnek vermek gelmedi ama script dünyası bu herşey karşımıza çıkabilir gene de belirtmek istedim size de kolay gelsin teşekkürler.
 

 

Decimas Decimas WM Aracı Kullanıcı
  • Üyelik 19.04.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek Developer
  • Konum İstanbul Avrupa
  • Ad Soyad E** E**
  • Mesajlar 821
  • Beğeniler 1 / 302
  • Ticaret 1, (%100)

edcsmile adlı üyeden alıntı

Öncelikle kolay gelsin hocam.

$variable = "Sınıftaki öğrenci sayısı: ".30;
Bu satırda zaten mantıken sayıyı siz belirlemişsiniz. Yani bunun yerine,
$variable = "Sınıftaki öğrenci sayısı: 30";
Da yapabilirsiniz.. Ama dışarıdan dinamik bir veri alacaksanız,

$sayi = 30;
$variable = "Sınıftaki öğrenci sayısı: " . $sayi;


Kullanımı bu şekilde olması yeterlidir. Kolay gelsin :angel:


PHP'de nokta opreatörüyle birleştirme işleminden kaçınılmalı çünkü performansı olumsuz etkiliyor, aslında birçok dilde aşağıdaki gibi yapılar kullaılıyor string için. Doğrudan bir değişkeni string içine yazdırabiliriz.


$variable = "Sınıftaki öğrenci sayısı: {$sayi}";


Bu durum PHP'de sadece çift tırnak için geçerli.
HapyMan

kişi bu mesajı beğendi.

no time for caution
wmaraci
wmaraci

HapyMan HapyMan Full Stack Developer Kullanıcı
  • Üyelik 14.05.2016
  • Yaş/Cinsiyet 31 / E
  • Meslek What do you do exactly ?
  • Konum İstanbul Avrupa
  • Ad Soyad T** T**
  • Mesajlar 562
  • Beğeniler 171 / 208
  • Ticaret 0, (%0)
Sorun olarak nitelendirdiğin şey aslında tamamen yanlış kurgulanmış mantık veya tam olarak algılanamamadan kaynaklanıyor. stringin sonuna ne eklersen ekle stringe dönecektir o yüzden integer olması bir anlam ifade etmiyor Decimas arkadaşın bahsettiği yöntem daha sağlıklı ve stabil çalışan yoludur.


$string = "ogrenci sayisi : 30"; // veya
$degisken = 30;
$string = "ogrenci sayisi : {$degisken}";


bu statik verilerde zaten boyle kullanilir, eger sayiyi dinamik olarak aliyorsan zaten kullanimi icin herhanangi bir sorun yasamazsin " tirnak kullandiginda icine degisken yazmak soun olusturmuyor, eger tek tirnak kullacaksanda


$degisken = 30;
echo 'String text degistirme : '.$degisken;


seklinde kullanman gerekli. yani senin sorun olarak teskil ettigin sey mantiksiz dusunmekten otesi degil malesef.
 

 

kaanst kaanst Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 28.02.2018
  • Yaş/Cinsiyet 28 / E
  • Meslek Web Developer
  • Konum İstanbul Avrupa
  • Ad Soyad K** S**
  • Mesajlar 669
  • Beğeniler 435 / 160
  • Ticaret 31, (%94)
anlaşıldı sağolun bende bilgilenmiş oldum
 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al