<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Curso_POO_PHP_Fluxos</id>
	<title>Curso POO PHP Fluxos - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Curso_POO_PHP_Fluxos"/>
	<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Curso_POO_PHP_Fluxos&amp;action=history"/>
	<updated>2026-10-22T05:23:57Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://manuais.iessanclemente.net/index.php?title=Curso_POO_PHP_Fluxos&amp;diff=36362&amp;oldid=prev</id>
		<title>Vlourido: /* Fluxos */</title>
		<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Curso_POO_PHP_Fluxos&amp;diff=36362&amp;oldid=prev"/>
		<updated>2013-07-15T16:07:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Fluxos&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Fluxos ==&lt;br /&gt;
&lt;br /&gt;
Os fluxos son un xeito de xeralizar certas operacións comúns aos ficheiros e aos recursos de rede, entre outros. En PHP, os fluxos identifícanse por variables de tipo [http://es1.php.net/manual/es/language.types.resource.php resource]. Por exemplo, as funcións [http://docs.php.net/manual/es/function.file.php file] e [http://docs.php.net/manual/es/function.file-get-contents.php file_get_contents] empregan fluxos para traballar co sistema de ficheiros. E a función [http://docs.php.net/manual/es/function.fopen.php fopen] abre un fluxo e devolve o recurso asociado ao mesmo, que podemos empregar máis adiante no resto de operacións sobre o fluxo.&lt;br /&gt;
&lt;br /&gt;
As funcións que traballan con fluxos operan de xeito distinto según sexa o tipo de recurso ao que se accede (por exemplo, un ficheiro local ou un ficheiro remoto mediante HTTP). Aos distintos tipos de recursos soportados por PHP chámaselles [http://www.php.net/manual/es/wrappers.php envolturas]. PHP soporta unha serie de envolturas base como &amp;lt;nowiki&amp;gt;http://&amp;lt;/nowiki&amp;gt;, file:// ou ogg://.&lt;br /&gt;
&lt;br /&gt;
PHP inclúe un amplo conxunto de [http://es1.php.net/manual/es/ref.stream.php funcións para traballar con fluxos].&lt;br /&gt;
&lt;br /&gt;
=== Contexto ===&lt;br /&gt;
&lt;br /&gt;
PHP tamén permite especificar un contexto para os fluxos. No contexto figuran o conxunto de opcións específicas para unha envoltura determinada. Por exemplo, ao abrir un fluxo a un recurso web empregando o protocolo HTTP, podemos especificar como contexto o método a empregar (GET) ou algún encabezado específico como &amp;quot;Cookie&amp;quot;. Isto faise creando o contexto coa función &amp;#039;&amp;#039;&amp;#039;[http://es1.php.net/manual/es/function.stream-context-create.php stream_context_create]&amp;#039;&amp;#039;&amp;#039; a partir dun array.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$opcions = array(&lt;br /&gt;
  &amp;#039;http&amp;#039;=&amp;gt;array(&lt;br /&gt;
    &amp;#039;method&amp;#039;=&amp;gt;&amp;quot;GET&amp;quot;,&lt;br /&gt;
    &amp;#039;header&amp;#039;=&amp;gt;&amp;quot;Accept-language: es\r\n&amp;quot;.&amp;quot;Cookie: usuario=Victor\r\n&amp;quot;&lt;br /&gt;
  )&lt;br /&gt;
);&lt;br /&gt;
$contexto = stream_context_create($opcions);&lt;br /&gt;
&lt;br /&gt;
// Envía unha petición HTTP a www.iessanclemente.net coas cabeceiras adicionais&lt;br /&gt;
$fich = fopen(&amp;#039;www.iessanclemente.net&amp;#039;, &amp;#039;r&amp;#039;, false, $contexto);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Do mesmo xeito, unha vez que temos un fluxo aberto podemos empregar a función &amp;#039;&amp;#039;&amp;#039;[http://es1.php.net/manual/es/function.stream-get-contents.php stream_get_contents]&amp;#039;&amp;#039;&amp;#039; para obter o seu contido en forma de cadea, e a función &amp;#039;&amp;#039;&amp;#039;[http://es1.php.net/manual/es/function.stream-get-meta-data.php stream_get_meta_data]&amp;#039;&amp;#039;&amp;#039; para recuperar información adicional acerca do fluxo, como as cabeceiras HTTP se é o caso.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$fich = fopen(&amp;quot;http://www.iessanclemente.net/&amp;quot;, &amp;quot;rb&amp;quot;);&lt;br /&gt;
echo var_dump(stream_get_meta_data($fich));&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Características avanzadas dos fluxos ===&lt;br /&gt;
&lt;br /&gt;
É posible definir [http://es1.php.net/manual/es/stream.filters.php filtros] sobre os fluxos. Os filtros son operacións que se levan a cabo sobre a información que se le ou escribe nun fluxo. Para rexistrar un filtro emprégase a función [http://es1.php.net/manual/es/function.stream-filter-register.php stream_filter_register].&lt;br /&gt;
&lt;br /&gt;
Pódese incluso crear un envoltorio personalizado para empregar fluxos como método de acceso a calquera información que precisemos. PHP define a clase ficticia [http://es1.php.net/manual/es/class.streamwrapper.php streamWrapper] que contén a lista dos métodos que deberían figurar nunha clase para que poida traballar como xestor dun envoltorio a medida. Unha vez creada a clase, deberase rexistrar o envoltorio empregando a función [http://es1.php.net/manual/es/function.stream-wrapper-register.php stream_wrapper_register].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[Usuario:Vlourido|Víctor Lourido]] 17:24 15 jul 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>Vlourido</name></author>
	</entry>
</feed>