MANUAL DE PHP

(y algo mas)windsurf pozo izquierdo
Google
search for in the  
ELMARRAJO.COM mysql bulma desarrollo web linux fedora html ayuda

windsurf mercedes camper

Capítulo 62. Preguntas Varias

Puede que existan algunas preguntas que no podemos colocar en otras categorías. Este es el lugar en donde puede encontrarlas.

1. ¿Cómo puedo manipular los manuales comprimidos mediante bz2 en Windows?
2. ¿Qué significa un signo & al lado de un argumento en la declaración de una función, como p.ej. asort()?
3. ¿Cómo manejo el parámetro register_globals?

1. ¿Cómo puedo manipular los manuales comprimidos mediante bz2 en Windows?

Si no cuenta con una herramienta de archivación que pueda manejar archivos bz2, descargue la herramienta de línea de comandos de RedHat (por favor refiérase a la inforamción presentada más adelante).

Si no desea usar una herramienta de línea de comandos, puede probar herramientas gratuitas como Stuffit Expander, UltimateZip, 7-Zip, o Quick Zip. Si dispone de herramientas como WinRAR o Power Archiver, puede descomprimir fácilmente archivos bz2 con ellas. Si usa Total Commander (anteriormente Windows Commander), un módulo adicional para ese programa se encuentra disponible de forma gratuita desde el sitio de Total Commander.

La herramienta bzip2 de línea de comandos por Redhat:

Los usuarios de Win2k Sp2 deben obtener la versión más reciente, 1.0.2, todos los demás usuarios de Windows deben obtener la versión 1.00. Después de la descarga, renombre el ejecutable a bzip2.exe. Para mayor conveniencia, colóquelo en un directorio que sea parte de sus rutas predeterminadas, p.ej. C:\Windows, en donde C representa la unidad en donde se encuentra su instalación de windows.

Nota: lang representa su lenguaje, y x el formato deseado, p.ej: pdf. Para descomprimir el archivo php_manual_lang.x.bz2 siga las siguientes instrucciones:

  • abra una ventana con el intérprete de comandos

  • cambie de directorio hacia la carpeta en donde almacenó el archivo php_manual_lang.x.bz2 descargado

  • invoque bzip2 -d php_manual_lang.x.bz2, extrayendo de este modo php_manual_lang.x en la misma carpeta

En caso de que haya descargado el archivo php_manual_lang.tar.bz2 con varios archivos html en su interior, el procedimiento es el mismo. La única diferencia es que recibe un archivo php_manual_lang.tar. Se conoce que el formato tar es tratado por la mayoría de archivadores en Windows, como por ejemplo WinZip.

2. ¿Qué significa un signo & al lado de un argumento en la declaración de una función, como p.ej. asort()?

Quiere decir que el argumento es pasado por referencia y es probable que la función modifique el argumento de acuerdo con la documentación. Sólo puede pasar variables de este modo y no necesita pasarlas con el signo & en la llamada de la función (tal cosa es considerada obsoleta).

3. ¿Cómo manejo el parámetro register_globals?

Para información sobre las implicaciones de seguridad de register_globals, lea el capítulo de seguridad sobre el Uso de register_globals.

Es recomendable usar superglobales, en lugar de depender en la activación de register_globals.

Si se encuentra en un servidor compartido con register_globals desactivado y necesita usar aplicaciones antiguas, que requieren que esta opción esté activada, o se encuentra en algún servidor de hospedaje en donde esta característica está habilitada, pero quisiera eliminar los riesgos de seguridad, puede que necesite emular el valor opuesto en PHP. Siempre es buena idea preguntar primero si es posible cambiar la opción de alguna forma en la configuración de PHP, pero si no es posible, entonces puede usar estos segmentos de compatibilidad.

Ejemplo 62-1. Emulación de Register Globals

Esto emula el comportamiento de register_globals On.

<?php
// Emular register_globals on
if (!ini_get('register_globals')) {
  
$superglobales = array($_SERVER, $_ENV,
      
$_FILES, $_COOKIE, $_POST, $_GET);
   if (isset(
$_SESSION)) {
      
array_unshift($superglobales, $_SESSION);
   }
   foreach (
$superglobales as $superglobal) {
      
extract($superglobal, EXTR_SKIP);
   }
}
?>

Esto emula register_globals Off. Tenga en cuenta que este código debe ser llamado al comienzo absoluto de su script.

<?php
// Emular register_globals off
function retirar_registros_GLOBALS()
{
   if (!
ini_get('register_globals')) {
       return;
   }

  
// Puede que desee cambiar esto por un error mas amigable
  
if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS'])) {
       die(
'Se ha detectado un intento de sobreescritura en GLOBALS');
   }

  
// Variables que no deben ser eliminadas
  
$noEliminar = array('GLOBALS''_GET',
                      
'_POST',    '_COOKIE',
                      
'_REQUEST', '_SERVER',
                      
'_ENV',    '_FILES');

  
$entrada = array_merge($_GET,    $_POST,
                          
$_COOKIE, $_SERVER,
                          
$_ENV,    $_FILES,
                           isset(
$_SESSION) && is_array($_SESSION) ? $_SESSION : array());

   foreach (
$entrada as $c => $v) {
       if (!
in_array($c, $noEliminar) && isset($GLOBALS[$c])) {
           unset(
$GLOBALS[$c]);
       }
   }
}

retirar_registros_GLOBALS();

?>



add a note add a note User Contributed Notes
Preguntas Varias
19-Jul-2005 09:08
using .htaccess file to disable register globals (register_globals)

The syntax for setting an option is:

php_value name value
php_flag name on or off

Example:

php_flag register_globals off
php_value arg_separator.output &amp;

The example turns off register_globals and sets the value of arg_separator.output to &amp; which is preferred rather than the default &.

Note: you can also set boolean options with the php_value directive, the string will be converted to boolean before assignment.

you can also use .htaccess to  turn magic quotes on or off.
Search php.net and you'll find it
markus
18-Jun-2005 03:34
Considering the comment below. I think there's a way to avoid that "problem":

<?php
//
// $starttime is an example of a variable that we might need to define,
// even before, running the "register_globals OFF" emulator below.
//
list($msec, $sec) = explode(' ', microtime());
$starttime = ((float)$msec + (float)$sec);

//
// If register_globals is ON, ensure no unexpected globals are defined.
// ie. We'll try to emulate a register_globals OFF environment.
//
if( (bool)@ini_get('register_globals') )
{
  
$superglobals = array($_ENV, $_GET, $_POST, $_COOKIE, $_FILES, $_SERVER);
   if( isset(
$_SESSION) )
   {
      
array_unshift($superglobals, $_SESSION);
   }
  
$knownglobals = array(
      
//
       // Known PHP Reserved globals and superglobals:
       //
      
'_ENV',        'HTTP_ENV_VARS',
      
'_GET',        'HTTP_GET_VARS',
      
'_POST',    'HTTP_POST_VARS',
      
'_COOKIE',    'HTTP_COOKIE_VARS',
      
'_FILES',    'HTTP_FILES_VARS',
      
'_SERVER',    'HTTP_SERVER_VARS',
      
'_SESSION',    'HTTP_SESSION_VARS',
      
'_REQUEST',

      
//
       // Global variables used by this code snippet:
       //
      
'superglobals',
      
'knownglobals',
      
'superglobal',
      
'global',
      
'void',

      
//
       // Known global variables defined before this code snippet is reached.
       //
      
'starttime',
   );
   foreach(
$superglobals as $superglobal )
   {
       foreach(
$superglobal as $global => $void )
       {
           if( !
in_array($global, $knownglobals) )
           {
               unset(
$GLOBALS[$global]);
           }
       }
   }
}
?>

Note the stuff related to the $_SESSION array depends on whether the PHP session has been started or not. You might want to call session_start() before this point (or set session.auto_start ON).

HTH+ :)
php at REMOVEMEkennel17 dot co dot uk
12-Apr-2005 08:22
Regarding simulating register_globals = off, note that it is impossible to adequately prevent $_SESSION variables from being globalised, as the array (and thus the globals) are created on a call to session_start().  You would therefore have to 'undo' this when you start a session as using it at the start of your script will have no effect.

To avoid potential problems, use a prefix that is unique for all session variables (e.g. 'SESS_'), and only access them via the $_SESSION array.  The prefix ensures that you don't have a naming clash (and therefore a security risk) with any non-session globals.
Juhapekka Tolvanen
18-Feb-2005 11:34
I added many links to software that can at least decompress Bzip2-files here:

http://en.wikipedia.org/wiki/Bzip2

Citas célebres

Para comprender lo guapa que pudo ser una anciana, no basta con mirar, sino que hay que traducir cada rasgo.

Marcel Proust
Escritor francés
(1871-1922)
Citas en tu mail
©Contenidos Gratis

Ilusiones Opticas
ilusion_optica_003.jpg
Contenidos Web

Chiste de... Relaciones laborales
Vagos

Un tío va a la oficina del paro y le dice al de la ventanilla:

- Uahhhhhhhhh! (esto es un bostezo) Uaaaaaaaa, Buenas (ahora uno se empieza a estirar como si se acabara de levantar) Uaaaaaaa taaaaaardes.

- ¿Y con esa actitud viene usted a buscar trabajo?

- No, si no es para mí, es para mi heeeeermano que esta acostado.
Chistes en tu mail
©ContenidosGratis

Humor Gráfico
humor_grafico_024.jpg
Contenidos Web

Inicio | Acción | Estrategia | Palabras | Puzzles | Solitarios | Foro Trucos
Cake ManiaCake Mania
Jugadores: 6835
Categoría del juego: Acción
Objetivo del juego: Ayuda a Jill a recuperar la pastelería de su abuela llevando su propia pastelería; consigue clientes y gana dinero.
Rainbow WebRainbow Web
Jugadores: 2199
Categoría del juego: Puzzles
Objetivo del juego: Rompe un pegajoso hechizo y salva un reino de fantasía en Rainbow Web. Tendrás toneladas de diversión mientras juegas a este mágico desafío para la mente.
Mahjongg FortunaMahjongg Fortuna
Jugadores: 12462
Categoría del juego: Solitarios
Objetivo del juego: Velocidad y habilidad mental son las armas más importantes en esta versión de un antiguo juego asiático. Despeja el tablero lo antes posible haciendo clic en las fichas iguales y gánate la fama eterna de la puntuación más alta.
Chainz 2Chainz 2
Jugadores: 6955
Categoría del juego: Puzzles
Objetivo del juego: Entra en el mundo de las combinaciones con Chainz 2: Relinked, emocionante secuela del exitazo del año pasado, Chainz. Gira eslabones y crea combinaciones de 3 ó más.
DeliciousDelicious
Jugadores: 4405
Categoría del juego: Acción
Objetivo del juego: ¿Eres un as de la multitarea? ¿Quieres que tus clientes estén contentos? ¡Pues Delicious es tu juego! Sacia el apetito de los clientes y tenlos contentos; ¡no te arriesgues!
BookwormBookworm
Jugadores: 4568
Categoría del juego: Palabras
Objetivo del juego: Junta las letras para formar palabras. ¡Las palabras más largas valen más puntos!
ZumaZuma
Jugadores: 4976
Categoría del juego: Acción
Objetivo del juego: Controla el ídolo de la rana de piedra de los antiguos Zuma en este intrigante enigma de acción. ¡Dispara bolas para formar conjuntos de tres, pero si dejas que lleguen a la calavera dorada morirás!
Jewel of AtlantisJewel of Atlantis
Jugadores: 3798
Categoría del juego: Puzzles
Objetivo del juego: Descubre la ciudad hundida de la Atlántida y busca valiosos tesoros. Viaja más allá de las profundidades del mar y vive trepidantes aventuras en Jewel of Atlantis.
Jewel QuestJewel Quest
Jugadores: 3727
Categoría del juego: Puzzles
Objetivo del juego: Convierte la arena de la antigua selva en oro tan rápido como puedas juntando grupos de 3 elementos. ¡Los grupos más grandes valen más puntos!
Bejeweled 2Bejeweled 2
Jugadores: 3659
Categoría del juego: Puzzles
Objetivo del juego: Con cuatro modos de juego únicos y fascinantes, nuevas piezas de juego explosivas e imponentes fondos planetarios, Bejeweled 2 es mucho más adictivo que nunca.
Contenidos gratis en tu webSiguiente >>

Fotos divertidas
fotos_increibles_0136.jpg
Contenidos Web
microrobots avion deportes riesgo recetas cocina canaria juegos online gratis moto motociclismo horoscopos naranjas valencianas surf canarias montañismo ciudades turismo postales gratis library Horoscopos Diarios Windsurf Canarias
fregadero microondas placa electrica bañopreparar camper pantalla plananevera compresor electricacamper fiat ducato camper baño quimicomampara enrollable bañocamper aire climatizadofurgoneta surf windsurffurgoneta surf windsurftelevisor furgonetas camperfurgonetas camper cama

Sudoku del día
Nivel de dificultad: Fácil



Cómo jugar:
El juego consiste en colocar los números del 1 al nueve de tal forma que no se repita el mismo número en la columna, fila y caja (bloques 3x3 enmarcados).

©Contenidos Gratis | Sudoku en tu mail

Warning: array_rand(): First argument has to be an array in /var/www/html/contenidos/efemerides.php on line 14
Sucedió el...

31 de agosto de

Efemérides en tu mail
©Contenidos Gratis
windsurf canarias youtube porno canarias baleares valencia madrid fallera mayor campus party alcacer feria valencia fernando alonso loterias dinero inversiones violencia de genero makro empresas cartera soledad tolerancia metro valencia gobierno de españa violencia de genero UIMP navidad