php
  • string
  • url
  • escaping
  • 2013-03-11 3 views 1 likes 
    1

    Часть моего PHP кода включает в себя строительство URL строки следующим образом:Как получить апострофы в строке PHP?

    $msg = $_REQUEST["msg"]; 
    $content = 'action=sendmsg'. 
           '&user='.rawurlencode($username). 
           '&password='.rawurlencode($password). 
           '&to='.rawurlencode($destination). 
           '&text='.rawurlencode($msg); 
    

    Когда $msg случается содержать апостроф, то присылают в "\'".

    Что нужно сделать, чтобы обратная косая черта не была вставлена ​​PHP?

    ответ

    4

    Вы, вероятно, хотите, чтобы проверить stripslashes: http://php.net/manual/en/function.stripslashes.php

    2

    Предположим, вы хотите послать переменную $content вместо того, чтобы просто зачистки обратный слэш, Рассмотрим использовать urlencode() вместо rawurlencode(). Кроме того, вы можете использовать функцию один раз для своей переменной $content.

    $content = urlencode($content); 
    

    UPDATE: как urlencode и rawurlencode может не соответствовать вашему делу. Почему бы вам просто не отправить $content без кодировки URL? Как вы отправляете нашу строку запроса? Если вы используете cURL, вам не нужно кодировать параметры.

    +0

    В чем разница между 'urlencode()' и 'rawurlencode()'? – CJ7

    +0

    Проверьте это: http://stackoverflow.com/questions/996139/php-urlencode-vs-rawurlencode – Raptor

    +0

    обновите ответ. просто любопытно, как вы используете строку запроса. – Raptor

    1

    Вы можете попробовать

    1. Stipslashes
    2. или поместить строку в "" и добавить ", где вы хотите.
    +0

    , пожалуйста, объясните причину downvote – 2013-03-11 08:33:15

    Смежные вопросы