Php 具有不同值的Foreach数组
需要一点帮助,我总是会遇到愚蠢的错误,当我尝试这样做的时候,我想要foreach数组,在里面做一个for循环,这可能吗? 这是我的密码Php 具有不同值的Foreach数组,php,loops,for-loop,foreach,Php,Loops,For Loop,Foreach,需要一点帮助,我总是会遇到愚蠢的错误,当我尝试这样做的时候,我想要foreach数组,在里面做一个for循环,这可能吗? 这是我的密码 $image = new SimpleImage(); $slike=array($_FILES['slika1']['tmp_name'],$_FILES['slika2']['tmp_name'],$_FILES['slika3']['tmp_name'],$_FILES['slika4']['tmp_name']); $koliko = count($s
$image = new SimpleImage();
$slike=array($_FILES['slika1']['tmp_name'],$_FILES['slika2']['tmp_name'],$_FILES['slika3']['tmp_name'],$_FILES['slika4']['tmp_name']);
$koliko = count($slike);
foreach ($slike as $slika) {
for ($i = 1; $i <= $koliko; $i++)
{
$slicica="../images/usluge/".mysql_insert_id()."-".$i.".jpg";
$image->load($slika);
$image->resizeToWidth(800);
$image->save($slicica);
}
}
$image=new SimpleImage();
$slike=array($_文件['slika1']['tmp_名称'],$_文件['slika2']['tmp_名称'],$_文件['slika3']['tmp_名称'],$_文件['slika4']['tmp_名称']);
$koliko=计数($slike);
foreach($slike as$slika){
对于($i=1;$i加载($slika);
$image->resizeToWidth(800);
$image->save($slicica);
}
}
例如,我想得到这个名字的新照片。如果最后一个id是2,我想得到这个文件名等等
- 2-1.jpg
- 2-2.jpg
- 2-3.jpg
- 2-4.jpg
或者有一种简单的方法可以做到这一点:)我认为您需要的是替换以下行:
$image->load($slika);
对于这一个:
$image->load($slike[$i-1]);
我认为您需要的是替换以下行:
$image->load($slika);
对于这一个:
$image->load($slike[$i-1]);
您可能在foreach中遇到了问题,就好像我们在数组上执行var_转储一样,我们将看到以下内容:
array(3) { [0]=> string(5) "test1" [1]=> string(4) "tes2" [2]=> string(5) "test3" }
因此,您需要将其更改为:
foreach ($slike as $key => $slika) {
您还可以使用来实现您尝试执行的操作,并使用linux命令:
foreach($slike as$key=>$slika){
对于($i=1;$i您可能在foreach中遇到了问题,就好像我们在数组上进行var_转储一样,我们将看到以下内容:
array(3) { [0]=> string(5) "test1" [1]=> string(4) "tes2" [2]=> string(5) "test3" }
因此,您需要将其更改为:
foreach ($slike as $key => $slika) {
您还可以使用来实现您尝试执行的操作,并使用linux命令:
foreach($slike as$key=>$slika){
对于($i=1;$i)您得到的这些“愚蠢错误”是什么?您当前得到的值是什么?我没有得到ERORR,但我只得到了一张相同的图片,最后一张图片是相同的,但名称是2-1.jpg,2-2.jpg,2-3.jpg,2-4.jpg。与之前的所有图片一样:(mysql_insert_id()将在循环的每次迭代中为您返回相同的值,除非您在每次迭代中都执行插入操作。我希望在文件名中包含mysql_insert_id(),这不是问题,问题是当我想添加-1、-2、-3等时,您使用的是什么平台?这些“愚蠢的错误”是什么你得到了?你现在得到了什么值?我没有得到ERORR,但我只得到了一张相同的图片,最后一张图片,相同,但名称为2-1.jpg,2-2.jpg,2-3.jpg,2-4.jpg。就像所有以前的图片一样:(mysql_insert_id()将在循环的每个迭代中为您返回相同的值,除非您在每个迭代中执行插入操作。我希望在文件名中包含mysql_insert_id(),这不是问题,当我想添加-1,-2,-3等时,问题就出在您使用Linux的哪个平台上?@take我看到了:$\u FILES['slika1']['tmp\u name']
这就是我建议使用移动上传的文件的原因。
是的,我看到它太晚了,这就是为什么我删除了我的评论。对不起。@user2266992尝试调试你的变量,添加一些变量转储($variables)
@我看到了:$\u文件['slika1']['tmp\u name']
这就是为什么我建议使用move\u uploaded\u file
。是的,我看到它太晚了,这就是为什么我删除了我的评论。对不起。@user2266992尝试调试您的变量,添加一些var\u dump($variables)并没有什么坏处
抱歉,我已更新了答案中的代码,它有一个索引错误,请重试新代码..Nelson,你是国王,这是最好的解决方案,你是最好的。效果很好,txanks!你能帮我一点忙吗,我有$slike数组,如何查看有空值和取消设置?不知道你到底想要什么..对于取消设置的数组项,你可以让unset()
检查为空是否为空()
。抱歉,我在回答中更新了代码,它有一个索引错误,请重试新代码。。Nelson,你是国王,这是最好的解决方案,你是最好的。效果很好,txanks!你能帮我一点忙吗,我有$slike数组,如何查看有空值以及如何取消设置?不知道你到底想要什么。。用于取消设置数组项y您有unset()
,要检查empty是否为空()
。。