2012-01-19 3 views
0

Я использую это часто, и хотел бы, чтобы превратить его в функцию:Создание функции в PHP

$f = fopen('../images/snotel/'. $name .'.pdf','w+'); 
fwrite($f, $pdf); 
fclose($f); 
$conv='/usr/bin/convert../images/snotel/'. $name .'.pdf ../images/snotel/'. $name .'.jpg'; 
system ($conv); 

Это то, что я пытался, но это не похоже на работу:

function pdf2jpg($name) 
{ 
    $f = fopen('../images/snotel/'. $name .'.pdf','w+'); 
    fwrite($f, $pdf); 
    fclose($f); 
    $conv='/usr/bin/convert../images/snotel/'. $name .'.pdf ../images/snotel/'. $name .'.jpg'; 
    system ($conv); 
} 

... 

pdf2jpg('wsr'); 
+0

разглагольствовать на что происходит, когда вы вызываете метод. – Mob

+0

Это ваш фактический код? Отсутствие пробелов после команды? Вы еще не изучали 'error.log'? – mario

+2

Кажется, что параметр '$ pdf' не существует в любой точке вашей функции ... не могли бы вы уточнить? –

ответ

1

Как это, ваша функция пытается записать файл без каких-либо данных в переменной $pdf, потому что вы не прошли его в

Вам нужно сделать одну из двух вещей:.

Эта версия берет данные в формате PDF в качестве аргумента и создает файл в функции:

function pdf2jpg ($pdf, $name)  { 
    $f = fopen('../images/snotel/'.$name.'.pdf','w'); 
    fwrite($f,$pdf); 
    fclose($f); 
    $conv = '/usr/bin/convert ../images/snotel/'.$name.'.pdf ../images/snotel/'.$name.'.jpg'; 
    //run 
    system($conv); 
} 

// Usage 
pdf2jpg($pdf, 'wsr'); 

Эта версия только принимает имя, если предположить, что файл уже существует:

function pdf2jpg ($name)  { 
    $conv = '/usr/bin/convert ../images/snotel/'.$name.'.pdf ../images/snotel/'.$name.'.jpg'; 
    //run 
    system ($conv); 
} 

// Usage 
$name = 'wsr'; 
$f = fopen('../images/snotel/'.$name.'.pdf','w'); 
fwrite($f,$pdf); 
fclose($f); 

pdf2jpg($name); 
+0

Tnx все. Я (по глупости) ожидал уведомления по электронной почте и просто забыл об этом вопросе. Тем временем я это выяснил сам по себе. – grantiago