PHP将路径放入数组

时间:2012-06-14 18:19:52

标签: php

我正在尝试使用文件路径填充数组。

<?php
session_start(session_id());
$galleryID = $_SESSION['newGalleryId'];
    $path_pages = '../../../../data/gallery/' . $galleryID . '/images/album/';
?>

<?php
class UploadHandler
{
    protected $options;

    function __construct($options=null) {
        $this->options = array(
            'script_url' => $this->getFullUrl().'/',
            'upload_dir' => $path_pages,
            'upload_url' => $path_pages,
            'param_name' => 'files'
}
?>

我正在使用jQuery-file-upload将文件上传到目录。如果我硬编码$ galleryID在它工作正常,但当我尝试插入$ variable它不起作用。任何想法为什么$ galleryID导致我的问题。

由于

2 个答案:

答案 0 :(得分:4)

尝试:

<?php
session_start();
$galleryID = $_SESSION['newGalleryId'];
$path_pages = '../../../../data/gallery/' . $galleryID . '/images/album/';
?>

听起来好像$ _SESSION没有开始。添加session_start将实例化会话,并希望拉动您的变量。

<强>更新

您应该像这样设置选项:

<?php
session_start(session_id());
$galleryID = $_SESSION['newGalleryId'];
    $path_pages = '../../../../data/gallery/' . $galleryID . '/images/album/';

$options = array(
            'upload_dir' => $path_pages,
            'upload_url' => $path_pages,
            'param_name' => 'files');

$upload = new UploadHelper($options);
?>

<?php
class UploadHandler
{
    protected $options;

    function __construct($options=null) {
        $this->options = array(
            'script_url' => $this->getFullUrl().'/'
             );
}
?>

您的$ path_pages对UploadHelper类没有任何可见性。由于类可以处理构造函数中的选项,因此在实例化类时传递选项。

答案 1 :(得分:-1)

由于这是一个非常不完整的样本,我只能猜测: 您可能需要使用以太$path_pagesglobal $path_pages;来引用$GLOBALS['path_pages']