+static inline void sanitize_string(char *str, size_t len, zval *zv TSRMLS_DC)
+{
+ /* trim whitespace */
+ php_trim(str, len, NULL, 0, zv, 3 TSRMLS_CC);
+
+ /* dequote */
+ if (Z_STRVAL_P(zv)[0] == '"' && Z_STRVAL_P(zv)[Z_STRLEN_P(zv) - 1] == '"') {
+ size_t deq_len = Z_STRLEN_P(zv) - 2;
+ char *deq = estrndup(Z_STRVAL_P(zv) + 1, deq_len);
+
+ zval_dtor(zv);
+ ZVAL_STRINGL(zv, deq, deq_len, 0);
+ }
+
+ /* strip slashes */
+ php_stripslashes(Z_STRVAL_P(zv), &Z_STRLEN_P(zv) TSRMLS_CC);
+}
+