function bbCode_iletisim($text,$val) {
// BBcode Tanımlamaları
$bbcode = array(
'~\{gonderenad}~s',
'~\{eposta}~s',
'~\{gonderenip}~s',
'~\{mesaj}~s',
'~\{taleptur}~s'
);
// HTML Etiketleri
$html = array(
(isset($val["gonderenad"]) ? $val["gonderenad"]:''),
(isset($val["eposta"]) ? $val["eposta"]:''),
(isset($val["gonderenip"]) ? $val["gonderenip"]:''),
(isset($val["mesaj"]) ? $val["mesaj"]:''),
(isset($val["taleptur"]) ? $val["taleptur"]:'')
);
// BBCode Çeviriyoruz
return preg_replace($bbcode,$html,$text);
}
var_dump(bbCode_iletisim("
Merhaba {gonderenad} <br>Bizimle {taleptur} talebiniz hakkında iletişime geçtiğiniz için teşekkür ederiz.<br>
Adınız Soyadınız:{gonderenad}<br>IP adresi:{gonderenip}<br>Talep Türü:{taleptur}<br>Eposta Adresi:{eposta}<br>Mesajınız:{mesaj}",array("gonderenad "=>"aa","eposta"=>"aa@aa.com.tr","gonderenip"=>"127.0.0.1","taleptur"=>"Oneri","mesaj"=>"Çözümsüz çözüm")); Php preg_replace hatası
5
●174
- 17-05-2023, 00:25:20Bbcode eklentisi yapmak istiyorum ancak preg_replace işlemiyor hatam nerde sizce
- 17-05-2023, 00:37:13
function bbCode_iletisim($text, $val) { // BBcode Tanımlamaları $bbcode = array( '~\{gonderenad}~s', '~\{eposta}~s', '~\{gonderenip}~s', '~\{mesaj}~s', '~\{taleptur}~s' ); // HTML Etiketleri $html = array( (isset($val["gonderenad"]) ? $val["gonderenad"] : ''), (isset($val["eposta"]) ? $val["eposta"] : ''), (isset($val["gonderenip"]) ? $val["gonderenip"] : ''), (isset($val["mesaj"]) ? $val["mesaj"] : ''), (isset($val["taleptur"]) ? $val["taleptur"] : '') ); // BBCode Çeviriyoruz return preg_replace($bbcode, $html, $text); } var_dump(bbCode_iletisim(" Merhaba {gonderenad} <br>Bizimle {taleptur} talebiniz hakkında iletişime geçtiğiniz için teşekkür ederiz.<br> Adınız Soyadınız: {gonderenad}<br>IP adresi: {gonderenip}<br>Talep Türü: {taleptur}<br>Eposta Adresi: {eposta}<br>Mesajınız: {mesaj}", array( "gonderenad" => "aa", "eposta" => "aa@aa.com.tr", "gonderenip" => "127.0.0.1", "taleptur" => "Oneri", "mesaj" => "Çözümsüz çözüm" ) ));
bu şekilde güncelleyip deneyebilir misin? - 17-05-2023, 00:37:18
- Hatayı gidermek için preg_replace_callback işlevini kullanmanızı öneririm. Bu işlev, düzenli ifadeyle eşleşen her eşleşme için bir geri çağırma işlevini çalıştırır. Bu, eşleşmeleri dönüştürmek için özel bir işlev tanımlamanızı sağlar.
- $bbcode ve $html dizilerinizdeki anahtar değerlerin eşleşmesini sağlamak için => operatörünü kullanmanız gerekiyor. Ancak, kodunuzda bazı boşluklarla birlikte yanlışlıkla ekstra boşluk bırakmışsınız.
function bbCode_iletisim($text, $val) { // BBcode Tanımlamaları $bbcode = array( '~\{gonderenad}~s', '~\{eposta}~s', '~\{gonderenip}~s', '~\{mesaj}~s', '~\{taleptur}~s' ); // HTML Etiketleri $html = array( (isset($val["gonderenad"]) ? $val["gonderenad"] : ''), (isset($val["eposta"]) ? $val["eposta"] : ''), (isset($val["gonderenip"]) ? $val["gonderenip"] : ''), (isset($val["mesaj"]) ? $val["mesaj"] : ''), (isset($val["taleptur"]) ? $val["taleptur"] : '') ); // BBCode Çeviriyoruz return preg_replace_callback($bbcode, function($matches) use ($html) { return $html[array_search($matches[0], $bbcode)]; }, $text); } var_dump(bbCode_iletisim(" Merhaba {gonderenad} <br>Bizimle {taleptur} talebiniz hakkında iletişime geçtiğiniz için teşekkür ederiz.<br> Adınız Soyadınız:{gonderenad}<br>IP adresi:{gonderenip}<br>Talep Türü:{taleptur}<br>Eposta Adresi:{eposta}<br>Mesajınız:{mesaj}", array("gonderenad" => "aa", "eposta" => "aa@aa.com.tr", "gonderenip" => "127.0.0.1", "taleptur" => "Oneri", "mesaj" => "Çözümsüz çözüm")));gpt - 17-05-2023, 04:55:57
function bbCode_iletisim($text, $val) { // BBcode Tanımlamaları $bbcode = array( '~\{gonderenad}~s', '~\{eposta}~s', '~\{gonderenip}~s', '~\{mesaj}~s', '~\{taleptur}~s' ); // HTML Etiketleri $html = array( (isset($val["gonderenad"]) ? $val["gonderenad"] : ''), (isset($val["eposta"]) ? $val["eposta"] : ''), (isset($val["gonderenip"]) ? $val["gonderenip"] : ''), (isset($val["mesaj"]) ? $val["mesaj"] : ''), (isset($val["taleptur"]) ? $val["taleptur"] : '') ); // BBCode Çeviriyoruz return preg_replace($bbcode, $html, $text); } var_dump(bbCode_iletisim(" Merhaba {gonderenad} <br>Bizimle {taleptur} talebiniz hakkında iletişime geçtiğiniz için teşekkür ederiz.<br> Adınız Soyadınız:{gonderenad}<br>IP adresi:{gonderenip}<br>Talep Türü:{taleptur}<br>Eposta Adresi:{eposta}<br>Mesajınız:{mesaj}", array("gonderenad"=>"aa", "eposta"=>"aa@aa.com.tr", "gonderenip"=>"127.0.0.1", "taleptur"=>"Oneri", "mesaj"=>"Çözümsüz çözüm"))); - 18-05-2023, 04:18:26
<?php function bbCode_iletisim($text,$val) { // BBcode Tanımlamaları $bbcode = array( '~\{gonderenad}~s', '~\{eposta}~s', '~\{gonderenip}~s', '~\{mesaj}~s', '~\{taleptur}~s' ); // HTML Etiketleri $html = array( (isset($val["gonderenad"]) ? $val["gonderenad"]:''), (isset($val["eposta"]) ? $val["eposta"]:''), (isset($val["gonderenip"]) ? $val["gonderenip"]:''), (isset($val["mesaj"]) ? $val["mesaj"]:''), (isset($val["taleptur"]) ? $val["taleptur"]:'') ); // BBCode Çeviriyoruz return preg_replace($bbcode,$html,$text); } $val = array( "gonderenad" => "qweqeq", "eposta" => "aa@aa.com.tr", "gonderenip" => "127.0.0.1", "taleptur" => "Oneri", "mesaj" => "Çözümsüz çözüm" ); $text = "Merhaba {gonderenad} <br>Bizimle {taleptur} talebiniz hakkında iletişime geçtiğiniz için teşekkür ederiz.<br>Adınız Soyadınız:{gonderenad}<br>IP adresi:{gonderenip}<br>Talep Türü:{taleptur}<br>Eposta Adresi:{eposta}<br>Mesajınız:{mesaj}"; echo bbCode_iletisim($text,$val); ?>