lostyazilim
tr.link

PHP'de en güvenli, doğru, ideal yazılışlar, istisnai yazılışlar, yanlış yazılışlar!

6 Mesajlar 820 Okunma
lstbozum
tr.link

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)
Hayırlı günler dilerim öncelikle...


Alttaki detay gibi gözüken ama önemli olduğunu sandığım meseleleri netleştirmeye çalışıyorum.
Bu minvalde php uzmanı olanların görüşlerini almak isterim mümkünse...


Hangileri doğrudur, gereklidir, güvenlidir, ideal yazım şeklidir, hangileri değildir?

&




include kodundan sonra parantez ve/veya tırnak içinde yazmak/yazmamak?


&





echo kodundan sonra parantez ve/veya tırnak içinde yazmak/yazmamak?


&

NOT IN ('', null)
NOT IN ('', 'null')

null ifadesini tırnak içinde yazmak/yazmamak?


&

if($data["ornek"] == 10
if($data["ornek"] == "10"

Sayıları tırnak içinde yazmak/yazmamak?




(Şimdilik bu kadar, zamanla bir takım eklemeler yapabilirim...)



Bildikleriniz ile ilgili görüşlerinizi paylaşırsanız sevinirim...

Şimdiden istifade edecek herkes adına teşekkür ederim...
MimarKaan

kişi bu mesajı beğendi.

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.
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)
1: include:parantez kullanımı tamamen zevk meselesi (hız açısından hiç bir fark yok)

2: echo: eğer ki bir string değer çıktı alıyorsanız manuel olarak tırnak olması mantıken mecbur. Tırnaksız bir string değer zaten yazılamaz. Parantez muhabbeti include de olduğu gibi hiç bir hız farkı yok. (Bunlar zevk melesi if'in bir sürü kullanımı var süslü parantezsiz tek satır, süslü parantezli sorgu gibi bunlar hızı etkileyen faktörler değil)

3: NULL: Muhabbetini örneklendirelim. Bir üye tablomuz var. Ve "istiyoruz ki" telefon numarasını girmeyen kullanıcıları listele o zaman NULL kullanırsak telefon numarasını girmeyen kişilere ulaşabiliriz çünkü böyle bir veri yoktur. (NULL>BOŞ,OLMAYAN). Eğer tırnak içerisinde yazarsanız bu bir karşılık verilen string değer olacaktır. telefon numarası "NULL" olanları getir diyecektir yani biri NULL=BOŞ, "NULL"="NULL" (string-bir karşılığı olan, null kelimesine/değerine eş değer) anlamına geliyor.

4: $data["ornek"] == 10: Diğerlerinde de olduğu gibi. İşin özü şudur; Eğer bir değer tırnak içerisinde yazılırsa bu bir dizedir (kelime,cümle,sayısal olmayan herşey). eğer ben yas=10 dersem "yas" değeri bir sayısaldır bunu biliyorumdur. Ama eğer ki yas="10" dersem bu bir metindir. Sayı değil. Mantıkende ileri de toplama işlemi yapmak istesem sayı ve metini topalayamayacağıma göre ya metin/dize olan değeri sayısala dönüştürmem gerek "ki bu işi uzatır" yada direkt sayı üzerinden gitmem gerekir.

---------------

Arkadaşlar şunu unutmayın;

Hangi platform,yazılım,program,dil olursa olsun tırnak içerisine yazılan değerler her zaman sizin belirlediğiniz bir dize/kelime/cümledir.

Hani X programında adımı yazarken tırnak kullanmıyorum diye bir muhabbet yok derleyici/aracı programlar bir şekilde bunu sağladı varsayalım ama bu algoritmaya yanlıştır.

yas=10 > INT/INTEGER/SAYISAL
ben bu "yas" değerini yas += 1 diyerek 10 yaşını 11e çıkarabilirim ama ;

yas="10" > STRING/VARCHAR/DIZE/METIN/KELIME
bu değeri yas += 1 diyemem çünkü "yas" değerim artık bir dizedir. Sayısal işlem yapamam.

Parantez,süslü parantez vb gibi işaretleyiciler performansı etkilemez. Burada hızı etkileyecek tek faktör sizin yaptığınız yazılımın ağırlığı nereye bindirip işi uzatıp-uzatmamanız.

if( yas==10 ) echo "Yaşınız 10.";
ile
if( yas == 10 ) { echo "Yaşınız 10." }
Arasında bir hız farkı yok. Tek fark süslü parantez kullanmazsanız tek satır, süslü parantez kullanırsanız birden fazla işlem yaptırabilirsiniz o if'e ait.

include "sayfam.php";
ile
include ("sayfam.php");
arasında bir fark yok.

Bu 2 belirttiğim örnek sadece fantezi bunun bir sürü çeşitleri var yazılabilen if sorgusu için

Bu örnek short-if diye geçer ama yukarda belirttiklerimden bir farkı/hızı yok. Sadece kullanımı basit ve fantezik.

1.yöntem;
for(vsvs) {
//işlemler
}
2.yöntem;
for:
//işlemler
endfor;

Yazım farkını görüyorsunuz ama hız farkı yine yoktur. Bu tarz muhabbetlerde fark edilen tek şey fantezidir.

Sağlıcakla kalın, iyi kodlamalar
MimarKaan BEYAZMASTER

kişi bu mesajı beğendi.

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)
edcsmile Üstadım GERÇEKTEN ÇOK FAYDALI, ÇOK DEĞERLİ, ÇOK AYDINLATICI BİR KATKI oldu bu...

Olabiğince detaylara eğilmişsiniz ve soru işareti bırakmayacak "NET"likte ifade etmişsiniz...

ÇOK TAKDİRE ŞAYAN...

Özellikle şahsım adına çok çok teşekkür ediyorum.

Hep buralarda olmanızı umarım...

SAĞLIKLI VE GÜZEL GÜNLER DİLERİM...
ikodev

kişi bu mesajı beğendi.

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)
edcsmile Üstadım paylaştığınız bilgiler sonrasında null konusundaki bilgilerimden daha emin oldum.

Fakat yanılmıyorsam bu kural NOT IN içinde geçerli değil...

Şimdi bir kez daha denedim;

NOT IN ('', 'null') => Ancak bu şekilde çalışıyor...

Belki de bu kural burada da geçerli ve 'null' ifadesini BOŞ olarak değil bir kelime gibi algılıyor... => Diyebilir miyiz?


NOT IN ve null konusu farklı bir başlıkta incelemek gerekiyor sanırım...

https://wmaraci.com/forum/php/php-null-bos-tirnak-arasindaki-farklar-not-in-not-null-681346.html


Katkınızı rica ederim...
 

 

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.
wmaraci
wmaraci

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 rica ederim ne demek yıllardır bu forumdayım elimden geldiğince herkese yardım edip, bilgilerimi paylaşmak isterim.

Bilgi paylaştıkça güzeldir demişler diğer tarafa bunları yanımızda getiremeyeceğiniz en azından bu dünya da bir faydamız olsun :)

"NOT IN" Parantez içerisinde belirtilen değerlerin olmayanlarını getir gibisinden örneklendirebiliriz. Öncelikle kodun doğrusunu feyz alalım sonra buna dönelim;

Where id IN (1, 2, '3')

Burada id sütunundan 1, 2, ve '3' olanları çağır demiş olduk. Eğer IN değerinden önce NOT ekleseydik bu değerler hariç olanları getir demiş olacaktık. Tırnak yine bildiğimiz gibi zaten bunu bahsetmeye gerek yok :) Diğer konuya da bakacağım hemen
BEYAZMASTER

kişi bu mesajı beğendi.

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)
Ne Güzel, Ne Mutlu Size...

Bknz.

"BİLGİNİN ZEKATI ÖĞRETMEKTİR..."

NOT IN konusundaki (mevcut bilgilerim dahilinde olsa da) berrak açıklamanız için çok teşekkür ederim edcsmile üstadım.

Diğer konuya verdiğiniz cevabın bildirimi geldi, hemen o konuya geçiyorum...
 

 

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al