gpt4 book ai didi

PHP in_array 使用文本文件中的值不起作用

转载 作者:行者123 更新时间:2023-12-01 00:12:02 27 4
gpt4 key购买 nike

我试图从两个不同的文本文件中获取两个不同的数字,将它们放入一个变量中,然后将其与 MYSQL 数组进行比较。我的问题是,当我定义三个变量时:

$num = 42;

$whichPlaylist = 2;

$joint = "$whichPlaylist $num"

并用数组进行测试,它有效。但是,如果我从文本文件中取出 2 和 42,它就不起作用。我试过使用 $trim 但这似乎无法解决问题。为什么当我定义我的变量时它可以工作,但当我从文本文件中获取它们时却不工作?它们具有完全相同的东西(尽管文本文件有一个新行)。

这是我的代码:

//Connect to DB
$config = array(
'host' => 'localhost',
'username' => '******',
'password' => '******',
'dbname' => '******'
);

$db = new PDO('mysql:host='.$config['host'].';dbname='.$config['dbname'],$config['username'],$config['password']);
$query = $db->query("SELECT `recentlyplayed`.`numplayed`, `recentlyplayed`.`id` FROM `recentlyplayed`");


//Put numbers from text files into variables
$num = file_get_contents('/home/*****/num.txt'); // has the value "42" with new line
$whichPlaylist = file_get_contents('/home/*****/whichplaylist.txt'); // has the value "2" with newline
$playlist3_num = file_get_contents('/home/*****/playlist3_num.txt');





//$whichPlaylist = 2;
//$num = 42;
$joint = "$whichPlaylist $num";
$trimmed = trim("$joint");
echo $trimmed;


while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
if (in_array($trimmed, $row)){
echo " In Array!"; //This does NOT work, but if I use the self-defined variables $whichPlaylist and $num (and comment out file_get_content variables) it DOES work.

}

}

最佳答案

在加入变量之前,您需要从 file_get_contents 中删除变量;否则换行符将在结果字符串中。修剪只需要字符串开头和结尾的空格,这会将它放在中间。

关于PHP in_array 使用文本文件中的值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14248900/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com