lostyazilim
tr.link

Warning: preg_match_all() expects parameter 2 to be string, array given in hatası nasıl çözerim

6 Mesajlar 1.596 Okunma
acebozum
tr.link

nahita nahita WM Aracı Kullanıcı
  • Üyelik 13.07.2014
  • Yaş/Cinsiyet 37 / E
  • Meslek öğretmen, yazılımcı, fotoğrafc
  • Konum Adana
  • Ad Soyad Ö** U**
  • Mesajlar 109
  • Beğeniler 3 / 5
  • Ticaret 0, (%0)
Arkadaşlar merhabalar curl ve regex öğrenemeye çalışıyorum. Ancak takıldığım bir yer var. Warning: preg_match_all() expects parameter 2 to be string, array given in C:\wamp\www\curl\index.php on line 40 hatası alıyorum. Kodlarım şu şekilde. http://paste.ubuntu.com/10680965/
 

 

elektronikssl
webimgo

tiwaly tiwaly NodeJS / PHP / NoSQL Kullanıcı
  • Üyelik 10.10.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek Yazılımcı
  • Konum İzmir
  • Ad Soyad i** A**
  • Mesajlar 363
  • Beğeniler 135 / 104
  • Ticaret 7, (%100)
VErdiğiniz linkteki 26. satırda hata var. pregmatch açılmış kapanmadan araya curl sıkışmış o satırları düzenleyin.
 

 

nahita nahita WM Aracı Kullanıcı
  • Üyelik 13.07.2014
  • Yaş/Cinsiyet 37 / E
  • Meslek öğretmen, yazılımcı, fotoğrafc
  • Konum Adana
  • Ad Soyad Ö** U**
  • Mesajlar 109
  • Beğeniler 3 / 5
  • Ticaret 0, (%0)
normalde kodlarda o şekilde değil sadece kopyala-yapıştır yaparken hatalı yapmışım. Düzeltilmiş şekli bu ama aynı hatayı veriyor.

http://paste.ubuntu.com/10685356/
 

 

tiwaly tiwaly NodeJS / PHP / NoSQL Kullanıcı
  • Üyelik 10.10.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek Yazılımcı
  • Konum İzmir
  • Ad Soyad i** A**
  • Mesajlar 363
  • Beğeniler 135 / 104
  • Ticaret 7, (%100)
Şöyle ki var_dump() fonksiyonu ile kontrol ettiğimde gördüğüm kadarıyla $kategori değişkeni çift boyutlu bir dizi haline gelmiş. Yani $kategori[0] yerine $kategori[0][0] ile ulaşılabilir. Sen pregmatchall fonksiyonuna dizi gönderdiğin için fonksiyon eşleme yapamıyor. Özellikle bot yapımlarında gelen verileri sık sık var_dump() ile kontrol etmeni tavsiye ederim.
 

 

wmaraci
wmaraci

nahita nahita WM Aracı Kullanıcı
  • Üyelik 13.07.2014
  • Yaş/Cinsiyet 37 / E
  • Meslek öğretmen, yazılımcı, fotoğrafc
  • Konum Adana
  • Ad Soyad Ö** U**
  • Mesajlar 109
  • Beğeniler 3 / 5
  • Ticaret 0, (%0)
Genelde print_r kullanıyorum. aşağıdaki şekilde kullandığımda sadece verilerin bir kısmını [0][0] alıyor. Döngüye mi sokmak gerekiyor.

preg_match_all('@(.*?)<\/a>@',$kategori[0][0],$altKategori);


yaptığımda

tiwaly tiwaly NodeJS / PHP / NoSQL Kullanıcı
  • Üyelik 10.10.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek Yazılımcı
  • Konum İzmir
  • Ad Soyad i** A**
  • Mesajlar 363
  • Beğeniler 135 / 104
  • Ticaret 7, (%100)
döngü ile olabilir.
 

 

wmaraci
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