我编写了一个函数,该函数从数据库中读取属性并在数组中返回值:
public function test($username) {
$stmt = $this->con->prepare("SELECT * FROM test WHERE username = ?");
$stmt->bind_param("s",$username);
$stmt->execute();
return $stmt->get_result()->fetch_assoc();
}
我想将数组元素分成变量。
require_once __DIR__.'/DbOperations.php';
$db = new DbOperations();
$file_path =$db->test($_POST['username']);
//var_dump($file_path);
foreach($file_path as $value){
//echo $value . "<br>";
$i=0;
$i=$i+1;
if ($i=1)
$username=$value;
if ($i=2)
$role=$value;
if ($i=3)
$URL=$value;
}
echo $username. $role.$URL."<br>";
我该怎么办?
答案 0 :(得分:0)
您可以使用动态变量名:
import cv2
import statistics
import numpy as np
from PIL import Image
import urllib.request
import matplotlib.pyplot as plt
from skimage.metrics import structural_similarity
class CompareImages_n():
def __init__(self, url_1, url_2):
self.img_url_1 = url_1
self.img_url_2 = url_2
def load_images(self, img_url, flag_color=False):
req = urllib.request.urlopen(img_url)
arr = np.asarray(bytearray(req.read()), dtype=np.uint8)
image = cv2.imdecode(arr, -1) # Load image as it is
if not flag_color:
return cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # Change color to greyscale
else:
return image
def main_process_ssmi(self):
ima1 = self.load_images(self.img_url_1)
ima2 = self.load_images(self.img_url_2)
(H, W) = ima1.shape
ima2 = cv2.resize(ima2, (W, H))
(score, diff) = structural_similarity(ima1, ima2, full=True)
return score
我正在努力查看为什么这比将它们全部组合成一个好的数组更好,但这可能超出了问题的范围。
您的代码会很费力,因为您在每次迭代中都设置了foreach ($file_path as $key=>$value) {
$$key = $value;
}
,然后在每个$i=0
语句中给它分配了另一个值。阅读有关分配与比较操作的if
,=
和==
之间的区别。
答案 1 :(得分:0)
我认为您正在描述函数#merge two files
ld <- melt(rates,id.vars = "Date")
library(data.table)
setDT(ld)
setDT(toConvert)
setnames(ld,c("variable","value"),c("currency","rate"))
s <- merge(toConvert,ld,all.x = TRUE,by=c("Date","currency"))
library(dplyr)
df <- s %>% mutate_at(vars(matches("Value")),funs(./rate))
。它将数组键转换为变量。
https://www.php.net/manual/en/function.extract.php