Codeigniter上传:从$ this->上传 - >数据()获取image_width

时间:2012-08-06 15:32:53

标签: arrays codeigniter multidimensional-array image-upload

我是CI新手,我不能试图从阵列中访问单个元素;我已经上传了一张图片,并希望在进行额外处理之前知道尺寸。

$imgOriginalData = array('upload_data' => $this->upload->data());

print_r ($imgOriginalData); // shows that [image_width] is a property that exists
echo element('image_width', $imgOriginalData); // returns "Array"

if ($imgOriginalData['image_width'] > 800){ // throws error Undefined index: image_width

echo "<p>Greater than 800</p>";
}else{
    echo "<p>less than 800</p>";
}

2 个答案:

答案 0 :(得分:2)

根据您的代码段:

$imgOriginalData = array('upload_data' => $this->upload->data());

您正在寻找的所需密钥应为:

echo $imgOriginalData[ 'upload_data' ][ 'image_width' ]

编辑:您基本上是在索引upload_data创建一个新的子数组,因此您需要通过上传库($this->upload->data())来处理数据数组。 upload_data密钥。

答案 1 :(得分:1)

而不是$imgOriginalData = array('upload_data' => $this->upload->data());

只需$imgOriginalData = $this->upload->data();

然后要获得宽度,请在if语句中使用$imgOriginalData['image_width']