Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou usando php 5.3.2
quando eu executo:
echo file_get_contents('phar://arquivo.phar/public/index.php');
ele mostra o conteúdo certinho do arquivo...
mas quando eu tento:
include 'phar://arquivo.phar/public/index.php';
ele da warning:
Warning: include(): Failed opening 'phar:///home/eu/workspace/teste/public/arquivo.phar/public/index.php' for inclusion (include_path='.:/home/eu/workspace/teste/public') in /home/eu/workspace/teste/public/index.php on line 11
estou usando eclipse PDT e rodando com ZendDebugger
Agué sabe o pq disso?
>
include ('phar://arquivo.phar/public/index.php');
include não é uma função, marcom, por isso não precisa dos parênteses.
Como você está gerando o Phar, Rogério ?
Você tem algum stub que você mesmo definiu ?
Estou gerando via PDT. Clico no projeto, export, as PHAR file, deixo as opções padrões marcadas:
export type: phar
compress type: none
Specify the stub file: Generate the stub file
Signatura type: md5
Procura o erro na linha 11. Quando você dá include, o PHP executa o arquivo. Quando você dá file_get_contents, ele apenas exibe o conteúdo do arquivo xD
Cara, o problema é no include mesmo. Do PHAR.
Entendo o funcionamento do file_get_contents e do include...
o que estou tentando fazer é um include de um arquivo que faz parte de um pacote PHP
http://php.net/manual/en/book.phar.php
mas estou tendo algumas dificuldades.
consigo incluir o pacote completo... ele até executa o stub.
O problema é quando eu quero incluir apenas 1 recurso do pacote.
Alguém conhece isso?
experimente colocar
include ('phar://arquivo.phar/public/index.php');
eu uso muito tambem o inclute para incluir menus e costumo escrever:
include (menu.php)