Yazıda görünecek tırnak işaretlerinden önce Ters SLASH (kaçış operatörü) koyun. Bu şekilde php onu string içerisinde işleyecektir.
Yani:
$yazi = 'İki basamaklı sayılardan \'büyük\' olanı gösterir.';
Tek tırnak içerisindeki her şey string muamelesi görür. Çift tırnak için ise içeride yer alan değişkenler, tek tırnaklar vs. yorumlanır. Bu yüzden sorun yaşıyorsunuz. Diğer arkadaşların dediği gibi kullanarak sorununuzu çözebileceğiniz gibi, mevcut karakterlerin
HTML entity karşılıkları ya da
https://www.php.net/manual/en/function.addslashes.php fonksiyonunu kullanabilirsiniz.
Bu örnek yazdığım cümleleri ben sayfadan curl ile ayrıştırarak çekiyorum. Bunun gibi binlerce cümle çekiyorum. Her cümleyi değişkene atayıp sql sorgusunda veritabanıma kayıt yapıyorum. Yani dolayısıyla yazım yanlışı olan cümleleri bilemeyeceğim için kaçış operatörü kullanamıyorum.
Addslashes fonksiyonunu kullandığımda ise kaçış operatörünü otomatik ekliyor fakat benim bu veriyi kaçış operatörü olmadan çektiğim haliyle yani olduğu gibi veritabanıma aktarmak istiyorum. Köşeli parantez yada süslü parantezleri bir yerde okudum ama çözemedim.