Foros del Web » Programando para Internet » PHP »

Drama con SimpleXMLElement

Estas en el tema de Drama con SimpleXMLElement en el foro de PHP en Foros del Web. Tengo un codigo el cual tiene komo funcion imprimir el contenido de una etiqueta xml Código PHP: <?php  // require the twitter library require  "twitter.lib.php" ; //inicializar variable $id  =  ...
  #1 (permalink)  
Antiguo 08/07/2010, 16:16
Avatar de lolitashu  
Fecha de Ingreso: enero-2010
Ubicación: Chile / Santiago / Quilicura
Mensajes: 50
Antigüedad: 14 años, 2 meses
Puntos: 2
Drama con SimpleXMLElement

Tengo un codigo el cual tiene komo funcion imprimir el contenido de una etiqueta xml

Código PHP:
<?php 
// require the twitter library
require "twitter.lib.php";

//inicializar variable
$id '99724875';

// initialize the twitter class
$twitter = new Twitter($id);

// fetch your profile in xml format
$xml $twitter->showUser(); //hasta aki funca

//proceso
$texto = new SimpleXMLElement($xml);

foreach(
$texto->user as $user){
    echo 
$user->name;
}
?>
alguien podria encontrar algun error o observacion porke no me imprime el kontenido del campo??
gracias gracias gracias
  #2 (permalink)  
Antiguo 08/07/2010, 18:00
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Drama con SimpleXMLElement

seria mejor que postees la estructura del XML para orientarte, a ciegas es imposible
  #3 (permalink)  
Antiguo 08/07/2010, 19:03
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Drama con SimpleXMLElement

Lo mas que te podria decir es que hagas un var_dump(); a las siguientes variables:

Código PHP:


echo "<pre>";
var_dump($xml);
echo 
"</pre>";

echo 
"<pre>";
var_dump($texto);
echo 
"</pre>"
Y mira este post:
http://www.phpfreaks.com/forums/inde...topic=253483.0

Pasa dos valores... (aunque tampoco le funciona)
$twitter = new Twitter($id);
  #4 (permalink)  
Antiguo 09/07/2010, 10:18
Avatar de lolitashu  
Fecha de Ingreso: enero-2010
Ubicación: Chile / Santiago / Quilicura
Mensajes: 50
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Drama con SimpleXMLElement

La estructura del donumeto xml resultante es la siguiente

Código XML:
Ver original
  1. <user>
  2. <id>99724875</id>
  3. <name>lolitashu</name>
  4. <screen_name>lolitashu</screen_name>
  5. <location>Santiago / Chile</location>
  6. <description>nacì crecì morì</description>
  7. <profile_image_url>
  8. http://a3.twimg.com/profile_images/993401017/1223842624642_1f_normal.jpg
  9. </profile_image_url>
  10. <url>http://www.myspace.com/lolitashu</url>
  11. <protected>false</protected>
  12. <followers_count>25</followers_count>
  13. <profile_background_color>ffffff</profile_background_color>
  14. <profile_text_color>333333</profile_text_color>
  15. <profile_link_color>bbdb03</profile_link_color>
  16. <profile_sidebar_fill_color>09e7eb</profile_sidebar_fill_color>
  17. <profile_sidebar_border_color>0eb9c2</profile_sidebar_border_color>
  18. <friends_count>28</friends_count>
  19. <created_at>Sun Dec 27 15:16:56 +0000 2009</created_at>
  20. <favourites_count>0</favourites_count>
  21. <utc_offset>-18000</utc_offset>
  22. <time_zone>Quito</time_zone>
  23. <profile_background_image_url>
  24. http://a1.twimg.com/profile_background_images/113879024/fondo_twitter1.jpg
  25. </profile_background_image_url>
  26. <profile_background_tile>false</profile_background_tile>
  27. <profile_use_background_image>true</profile_use_background_image>
  28. <notifications/>
  29. <geo_enabled>false</geo_enabled>
  30. <verified>false</verified>
  31. <following/>
  32. <statuses_count>92</statuses_count>
  33. <lang>es</lang>
  34. <contributors_enabled>false</contributors_enabled>
  35. <status>
  36. <created_at>Fri Jul 09 15:25:27 +0000 2010</created_at>
  37. <id>18126261936</id>
  38. <text>
  39. RT @ichstudios: Increible como varian en menos de 30 días la cantidad de followers en Twitter @crcom #UDP http://twitpic.com/23rkqf
  40. </text>
  41. <source>web</source>
  42. <truncated>false</truncated>
  43. <in_reply_to_status_id/>
  44. <in_reply_to_user_id/>
  45. <favorited>false</favorited>
  46. <in_reply_to_screen_name/>
  47. <retweeted_status>
  48. <created_at>Fri Jul 09 15:20:21 +0000 2010</created_at>
  49. <id>18125894957</id>
  50. <text>
  51. Increible como varian en menos de 30 días la cantidad de followers en Twitter @crcom #UDP http://twitpic.com/23rkqf
  52. </text>
  53. <source>
  54. <a href="http://twitpic.com" rel="nofollow">Twitpic</a>
  55. </source>
  56. <truncated>false</truncated>
  57. <in_reply_to_status_id/>
  58. <in_reply_to_user_id/>
  59. <favorited>false</favorited>
  60. <in_reply_to_screen_name/>
  61. <geo/>
  62. <coordinates/>
  63. <place/>
  64. <contributors/>
  65. </retweeted_status>
  66. <geo/>
  67. <coordinates/>
  68. <place/>
  69. <contributors/>
  70. </status>
  71. </user>

la pueden ver en el siguiente link:
http://twitter.com/users/show.xml?user_id=99724875

Como dije anteriormente el kodigo lo muestra sin problemas, pero no logro sacar un campo espedifico, name pro ejemplo.

gracias!!
  #5 (permalink)  
Antiguo 09/07/2010, 14:08
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Drama con SimpleXMLElement

prueba usando esta (casi lo mismo):

Código PHP:

//leemos el xml
$fileXML simplexml_load_file($xml);

//esto te mostrara todo el xml
$xmlText $fileXML->asXML();
$xmlText htmlentities($xmlText);
echo 
$xmlText;


//prueba esto de varios modos
//print $fileXML->user;
//print $fileXML->user->name;
//print $fileXML->user[0];
//print $fileXML->user[1];
//print $fileXML->user[2];

//con un foreach

foreach ($fileXML->children() as $name => $value){
print 
"<b>$name:</b> $value<br /> \n";



//o asi
/*
foreach ($fileXML->user as $name => $value){
print "<b>$name:</b> $value<br /> \n";

*/ 

Etiquetas: Ninguno
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:54.