php - 从数据库传递的动态变量
问题描述
我们正在生成与 mysql 行输出直接链接的 php 变量名。这里是
现在我们有了动态变量,我们正在对图像进行 base64 编码
${'attachment_base64'.$row['id']} = base64_encode(file_get_contents($some_url));
现在我们想在while循环中传递这个动态生成的变量
$image_part .= 'array(
"name" => "'.$name.'",
"data" => "$attachment_base64"
),';
但我们无法在数据中传递动态名称。
这部分应该是这样的
"data" => "$attachment_base641556588"
其中 1556588 是来自数据库的动态 ID。
我们不能使用'.$row['id']。' 因为它只会将数据附加到 base64 编码数据中,所以我们希望动态变量名称在此处传递
想要在我的数组数据部分中传递动态名称,否则当我在循环后使用此数据时,在数据部分中传递了相同的图像
从 while 循环数据生成这种类型的数组
array(
"name" => "ggggf",
"data" => "$attachment_base64",
),
array(
"name" => "6800164880433",
"data" => "$attachment_base64",
),
解决方案
$row['id']
在变量名前缀之后连接。
$image_part .= 'array(
"name" => "'.$name.'",
"data" => "$attachment_base64'.$row['id'].'"
),';
但我强烈建议您将动态变量名称更改为关联数组。
推荐阅读
- c - 我需要弄清楚如何从输入数组中跳过星期几
- assembly - 有没有办法将不兼容的指针类型转换为 c 中的不同指针类型?
- javascript - 为什么我的 res.sendFile() 将 html 发送到浏览器控制台而不是呈现新的 html 页面?
- javascript - Vue.js 使用“数字”道具类型编译错误
- mapbox - 奇怪的问题,导航代码只在早上有效(加利福尼亚时间)
- java - 警报管理器回调函数中的 Flutter 和原生 android 方法
- gnuplot - 在 Gnuplot 中以等间距管理特定点的标签
- rust - Rust #![no_std]:未解析的外部符号 _mainCRTStartup
- babeljs - 'babel-eslint' 没有找到。错误:“.eslintrc.json#overrides[0]”中处理器的 ESLint 配置无效
- swift - 每个人都尝试过在 UITableViewController 中使用带有扩展选项的 Timer 吗?