Php mysqli是否仅从行获取指定数量的字符?

Php mysqli是否仅从行获取指定数量的字符?,php,mysqli,Php,Mysqli,我一直在互联网上搜索mysqli字符串操作函数,该函数只能从表行中获取指定数量的字符, 我能找到的最接近的东西是mysql LEFT(),它的工作原理如下: "SELECT LEFT(content, 20) FROM articles WHERE id='1'" 所以这只会从这一行得到20个字符,但当我尝试在我的代码中这样做的时候,这是一个 $sql = "SELECT id,byid,LEFT(content, 25),date_added FROM articles WHERE id=

我一直在互联网上搜索mysqli字符串操作函数,该函数只能从表行中获取指定数量的字符, 我能找到的最接近的东西是mysql LEFT(),它的工作原理如下:

"SELECT LEFT(content, 20) FROM  articles WHERE id='1'"
所以这只会从这一行得到20个字符,但当我尝试在我的代码中这样做的时候,这是一个

$sql = "SELECT id,byid,LEFT(content, 25),date_added FROM articles WHERE id='1' LIMIT 10";
$query = mysqli_query($database, $sql);
我可以获取除内容行以外的所有其他行,我做了一些研究,并实现了 左边的每个示例(行,int)都是mysql示例,而不是mysqli, 我现在可以使用php substr()实现所需的功能;功能,但要获取的内容非常大,我不想下载太多不在浏览器上使用的数据,从而降低我的网站速度

谢谢:)

  • 您正在使用的数据库仍然是MySQL。而mysqli只是一组使用mysql数据库的PHP函数
  • 要解决这个愚蠢的问题,只需添加一个别名

  • 你真正需要从mysqli得到的是准备好的声明。变量不应直接进入查询,而应仅通过占位符进入查询


  • 您是否尝试过MySQL substr函数:?我认为在您的情况下(以及在大多数情况下),这将是一个更好的选择。您是否尝试为您的计算列命名
    SELECT id,byid,LEFT(content,25)作为cut_content,date_从id='1'LIMIT 10的文章中添加
    hello@Pascamel谢谢你的回答,我现在明白了为什么在我获取数据时它不起作用了,我是这样做的$row[content];所以这并不吸引人anything@Maximus2012非常感谢,我现在可以这样工作$sql=“SELECT id,byid,LEFT(content,25),来自byid='$url_id'LIMIT 10'的文章$query=mysqli\u query($db\u conx,$sql);而($row=mysqli_fetch_数组($query,mysqli_ASSOC)){$articleid=$row[“id”];$byid=$row[“byid”];$content=$row[“LEFT(content,25)”;
    SELECT id,byid,LEFT(content, 25) as cut,date_added FROM articles WHERE id='1' LIMIT 10";