【问题标题】:Codeigniter upload: Getting image_width from $this->upload->data()Codeigniter 上传:从 $this->upload->data() 获取 image_width
【发布时间】:2012-08-06 15:32:53
【问题描述】:

我是一名 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>";
}

【问题讨论】:

    标签: arrays codeigniter multidimensional-array image-upload


    【解决方案1】:

    根据你的代码sn-p:

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

    您要查找的所需密钥应该是:

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

    编辑:您基本上是在索引upload_data 处创建一个新的子数组,因此您需要通过upload_data 键来处理上传库($this-&gt;upload-&gt;data())返回的数据数组.

    【讨论】:

    • 我认为你是对的。我尝试了类似的方法,但不一样...认为 [ 'upload_data' ] 是新数组 var 的一部分。谢谢
    【解决方案2】:

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

    只要$imgOriginalData = $this-&gt;upload-&gt;data();

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

    【讨论】:

      猜你喜欢
      • 2014-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-12
      • 2016-05-25
      • 2020-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多