Старайтесь всегда использовать абсолютный путь, как вы делали во втором примере, который работает.
Конечно, вы не хотите жестко кодировать этот физический путь, поэтому вы можете использовать либо:
dirname(__FILE__)
, чтобы получить путь к каталогу, в котором находится файл, в котором написано
- Или с PHP> = 5.3:
__DIR__
, который дает точно такой же путь.
Итак, в вашем случае вы, вероятно, будете использовать что-то вроде:
$postcontent['files'] = '@' . __DIR__ . '/test.jpg';
Или с PHP <5.3: </p>
$postcontent['files'] = '@' . dirname(__FILE__) . '/test.jpg';