Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中有没有替代“友好”变量名的方法?_Php_Mysql_Variables_Preprocessor - Fatal编程技术网

在PHP中有没有替代“友好”变量名的方法?

在PHP中有没有替代“友好”变量名的方法?,php,mysql,variables,preprocessor,Php,Mysql,Variables,Preprocessor,全部, 我正在做我的第一个PHP大项目&我遇到了一些风格/卫生问题 我从一个Mariadb查询中提取结果&它们最终形成一个名为$row的数组 当我把它们打印出来的时候,我会得到这样的陈述 echo "Mr Boddy was killed by ".htmlspecialchars($row[8])." with the ".htmlspecialchars($row[20])." in the ".htmlspecialchars($

全部,

我正在做我的第一个PHP大项目&我遇到了一些风格/卫生问题

我从一个Mariadb查询中提取结果&它们最终形成一个名为$row的数组

当我把它们打印出来的时候,我会得到这样的陈述

echo "Mr Boddy was killed by ".htmlspecialchars($row[8])." with the ".htmlspecialchars($row[20])." in the ".htmlspecialchars($row[25]).".";
当我真的想让代码像

echo "Mr Boddy was killed by ".htmlspecialchars($suspect)." with the ".htmlspecialchars($weapon)." in the ".htmlspecialchars($location).".";
我想这样做是因为 1.它更容易阅读。 2.如果添加或移动数据库列,则更易于维护

如果我在C中这样做的话,我只需要编写几个define语句,但它们在PHP中似乎不是这样工作的

目前,我使用的变量名格式不能与我在代码中使用的任何其他格式混淆&通过一系列sed命令将其发送到友好变量所在的位置,以替换真实变量


有更好的方法吗?如果没有,友好变量名是否有首选格式?

是否使用PDO?如果是这样,您可以使用PDO::FETCH_ASSOC FETCH模式:

$statement=$connection->prepareSELECT从表中选择嫌疑人、武器、位置; $statement->execute; $row=$statement->fetch\PDO::fetch\u ASSOC; //行现在有了您的db列。例如:$row[“可疑”]
文档:

您正在使用PDO吗?如果是这样,您可以使用PDO::FETCH_ASSOC FETCH模式:

$statement=$connection->prepareSELECT从表中选择嫌疑人、武器、位置; $statement->execute; $row=$statement->fetch\PDO::fetch\u ASSOC; //行现在有了您的db列。例如:$row[“可疑”]
文档:

使用mysqli_fetch_assoc而不是mysqli_fetch_数组。正如John Conde提到的,以关联的方式检索,然后使用列名、$row['suspect']、$row['blast']等访问数据。显然,使用数据库表中定义的列名。使用mysqli_fetch_assoc而不是mysqli_fetch_数组。正如John Conde提到的,以关联方式检索,然后使用列名、$row['suspect']、$row['BLEAR']等访问数据。显然,使用数据库表中定义的列名。这比仅使用数字要好,但它确实会在变量名中添加至少5个字符。我希望不要给变量名添加太多的膨胀&而且它往往会导致我的IDE在任何一行的上下文更改越多时崩溃has@sudononymous如果你担心变量名的长度,那么你关注的是错误的事情,试图优化一些不需要优化的东西。我同意@Phil,变量名应尽可能长。为了使代码和上下文易于理解,需要这样做。作为解释,在我最近重构代码之前,其中一行有5183个字符长&有119个对$row元素的引用。我同意变量需要占用尽可能多的空间,但在已经过长的行中再添加600个字符并不能提高代码的可读性。我非常感谢这个关联解决方案,但我仍然对其他解决方案感到好奇。这比仅仅拥有数字要好,但它确实为变量名添加了至少5个字符。我希望不要给变量名添加太多的膨胀&而且它往往会导致我的IDE在任何一行的上下文更改越多时崩溃has@sudononymous如果你担心变量名的长度,那么你关注的是错误的事情,试图优化一些不需要优化的东西。我同意@Phil,变量名应尽可能长。为了使代码和上下文易于理解,需要这样做。作为解释,在我最近重构代码之前,其中一行有5183个字符长&有119个对$row元素的引用。我同意变量需要占用尽可能多的空间,但在已经过长的行中再添加600个字符并不能提高代码的可读性。我非常感谢协会的解决方案,但我仍然对其他解决方案感到好奇。