我尝试删除空格但不起作用。我使用修剪来删除空格。我在 php 中意识到,在响应文本 ajax 中进行回调。
$orderHTML = $producto['id'].'#'.$producto['nombre_producto'].'*'.$producto['precioVenta'].'*'.$producto['descripcion'].'*'.$producto['descatalogado'].'@'.$producto['cantidad_stock'];
echo trim($orderHTML);
在我的 ajax 中,结果数据是:
data: " 1#jeans*1.00**0@100"
我接到了一个php的电话:
GET "http://localhost:8080/ajax/products_ajax.php?idProducto=1&opcion=2"
我的php是:
<?php
require_once '../../vendor/autoload.php';
require_once '../../config.php';
require_once '/functions/function_orders.php';
$opcion = $_REQUEST['opcion'];
switch($opcion)
{
case '1':
if(isset($_POST['parametro1'])&&isset($_POST['parametro2']))
{
$orderHTML = getOrdersProduct($_POST['parametro1'],$_POST['parametro2']);
echo trim($orderHTML);
}
break;
case '2':
if(isset($_GET['idProducto']))
{
$producto = getOrdersProduct1($_GET['idProducto']);
$orderHTML = trim($producto['id']).'#'.$producto['nombre_producto'].'*'.$producto['precioVenta'].'*'.$producto['descripcion'].'*'.$producto['descatalogado'].'@'.$producto['cantidad_stock'];
echo trim($orderHTML);
}
}
我的成语查询:
function getOrdersProduct1($identificador)
{
return ORM::for_table('producto')->
where('id',$identificador)->find_one()->as_array();
}
我意识到一个var_dump($productos);d ie();
array (size=11)
'id' => string '1' (length=1)
'nombre_producto' => string 'jeans' (length=6)
'nombre_latin' => null
'peso' => string '100.00' (length=6)
'descatalogado' => string '0' (length=1)
'dimensiones' => null
'descripcion' => null
'cantidad_stock' => string '100' (length=3)
'precioVenta' => string '1.00' (length=4)
'gama_id' => string '2' (length=1)
'proveedor_id' => string '1' (length=1)
我做错了什么?谢谢
您必须
正确使用带有第二个参数的 trim 函数。 如果所有失败,请尝试
$str = trim(preg_replace('/'s+/',' ', $str));
代码行将删除多余的空格,以及前导空格和尾随空格。 这与修剪和preg_replace相结合。
在我看来
,您的$producto['id']是一个固定长度的文本字段,因此具有前导空格。
在将值连接到$orderHTML
之前,您应该使用 trim()
或 ltrim()
来删除这些值,然后稍后当您阅读代码时,它将自行记录为什么您必须进行此操作,如下所示
$orderHTML = ltrim($producto['id']) . '#' .
$producto['nombre_producto'].'*'.
$producto['precioVenta'].'*'.
$producto['descripcion'].'*'.
$producto['descatalogado'].'@'.
$producto['cantidad_stock'];
echo $orderHTML;