从 php/jquery 中的字符串中替换或删除双引号、单引号

to replace or remove double,single quotes from string in php/jquery

我需要在 google 语言翻译器中使用 jQuery AJAX 删除所有双引号、单引号。当我更改 onchange() 时,如果找到双引号,它不会翻译字符串或字符,我也在 php 中使用但没有得到预期的结果。

我使用了php'字符串相关函数但没有得到结果

HTML 代码:

<select name="langid" id="langid<@=review_id@>" class="guest clearfix" style="width: 150px;height: 29px;" onchange='translate_text("<@=review_id@>","<@=review_title@>","<@=your_view@>","<@=neg_review@>");'>

PHP 代码:

<?php

public function translate_text()
{
   try
        {
            $positive = $_REQUEST['positivereview'];
            $negative = $_REQUEST['negativereview'];
            $title = $_REQUEST['title'];


            $translate_into = $_REQUEST['lang']; 


            $var = new translate($translate_from,$translate_into); 

            $ar = array();
            if($title)
            {

                $ar['title'] = $var->get($title);
            }
            if($positive)
            {

                $ar['positivereview'] = $var->get($positive);   
            }   
            if($negative)
            {

                $ar['negativereview'] = $var->get($negative);   
            }   
            print_r(json_encode($ar));
            exit(0);

        }
        catch(Exception $e)
        {
            $this->log->logIt($this->module."-".""."-".$e);
        }       
    }

?>

JS/JQUERY 代码:

 function translate_text($review_id,$review_title,$your_view,$neg_review) 
    {


     var sel = jQuery('#langid'+$review_id).val();
         var url=serverurl+'index.php/feedback';
            showLoadingBar();
            if(sel == 0)
            sel = 'en';



     var passDataAsStr="opcode=translate_text&positivereview="+
    $your_view+"&negativereview="+$neg_review+"&title="+$review_title+"&lang="+sel;


                jQuery.ajax({


             type: "POST",
                     url: url,
                    //async : false,
                    data: passDataAsStr,
                    success: function(response) {
                    hideLoadingBar();
                    // console.log(response);
                        jQuery('#btnclose'+$review_id).show();
                        jQuery('#trans_div'+$review_id).show();
                        var res = jQuery.parseJSON(response);
                        console.log(res['title']);
                        console.log(res['positivereview']);
                        console.log(res['negativereview']);
                        jQuery('#titleid_'+$review_id).text(res['title']);
                        jQuery('#positiveid'+$review_id).text(res['positivereview']);
                        jQuery('#negativeid'+$review_id).text(res['negativereview']);

                          }
                  });
    }

当我想改变语言翻译器时它不会改变,我是这样使用的 var $review_title = this.$review_title.replace(/['"]+/g, ""); 但我不知道如何在 ajax jquery 的参数中传递 `.replace()。在 jquery 和 php 中更改评论标题也没有得到结果

我想要这种类型的输出。

这样输入:"New "home" away from home when in village"

输出必须是这样的:New home away from home when in village

任何body有任何想法请帮忙解决。谢谢

排序在phpjquery边或任何html特殊字符

使用str.replace(/"|'/g,'');删除双引号或单引号:

var str = `New "home" away from home when in village's`;
var res = str.replace(/"|'/g,'');
console.log(res);

您可以使用:

$str = str_replace(array('\'', '"'), '', $str);

如果您的字符串只有字符和数字,那么您可以使用:

$str = preg_replace("/[^a-zA-Z0-9 ]+/", "", html_entity_decode($str ));