Foros del Web » Programando para Internet » PHP »

Pasar variables a una funcion

Estas en el tema de Pasar variables a una funcion en el foro de PHP en Foros del Web. Hola q tal a ver si me podeis ayudar q me kedao un poco parado bueno tengo el siguiente codigo: Código PHP: <?php if (! eregi ...
  #1 (permalink)  
Antiguo 03/06/2003, 18:20
 
Fecha de Ingreso: junio-2002
Mensajes: 77
Antigüedad: 21 años, 9 meses
Puntos: 0
Pasar variables a una funcion

Hola q tal a ver si me podeis ayudar q me kedao un poco parado bueno tengo el siguiente codigo:
Código PHP:
<?php

if (!eregi("modules.php"$_SERVER['PHP_SELF'])) {
    die (
"No puedes acceder directamente a este archivo...");
}

$module_name basename(dirname(__FILE__));

$index 1;

$nombre_archivo $file //Aki sale bien el nombre del archivo
pero dentro de la funcion plantilla no me sale,ahi q pasar        variables??

function 
plantilla() {
    global 
$module_name;
    include(
"header.php");
    
    
    
$ruta"modules/$module_name/\$file.php"
    
$ruta2"<img src=\"modules/$module_name/";
         
$fcontents file ($ruta);
    while (list (
$line_num$line) = each ($fcontents)) {
         
        
$line ereg_replace("<img src=\"",$ruta2,$line); 

            echo 
"$line";
}
    
    
OpenTable();
    


?>

<img src="index_archivos/image001.gif" width="43" height="40">

<?
    CloseTable
();
    include(
"footer.php");
}

switch(
$func) {

    default:
    
plantilla();
    break;
}

?>
Bueno esto la funcionabilidad q tiene es al path donde se encuentra la imagen le añade unas cuantas cosillas mas como son la carpeta modules y el modulo donde se encuentra la pagina $module_name pq sino daria fallos en php-nuke al inserta una imagen desde un editor cualquiera, lo q me falta q no me sale dentro de la funcion es el nombre del fichero $file, pero fuera de la funcion plantilla si me sale como podria resolver esto
  #2 (permalink)  
Antiguo 03/06/2003, 23:12
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 7 meses
Puntos: 8
Debes declarar a $file como global dentro de la funcion, o bien pasarla como parametro.
Forma 1:
Código PHP:
$file "valor";
function 
funcion() {
    global 
$file;
    echo 
$file;

Forma 2:
Código PHP:
$file "valor";
function 
funcion($archivo) {
   echo 
$archivo;
}
// cuando llamas a la funcion
funcion($file); 
O sino 3 con el array superglobal:
Código PHP:
$file "valor";
function 
funcion($archivo) {
   echo 
$GLOBALS['file'];

Espero que se entienda.
Mejor explicado lo podes encontrar aqui:
http://www.php.net/manual/es/languag...bles.scope.php

Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:50.