Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将字符串类型从curl转换为数组_Php_Arrays_Curl - Fatal编程技术网

Php 将字符串类型从curl转换为数组

Php 将字符串类型从curl转换为数组,php,arrays,curl,Php,Arrays,Curl,我正在使用以下代码: $key='the_key'; $url='http://api-product.skimlinks.com/categories?key='.$key.'&format=xml'; $ch = curl_init($url); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result=curl_exec($ch);

我正在使用以下代码:

$key='the_key'; 
$url='http://api-product.skimlinks.com/categories?key='.$key.'&format=xml';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result=curl_exec($ch);
var_dump($result);
这给了我下面的字符串

string(575317) "<?xml version='1.0' encoding='UTF-8'?>
<skimlinksProductAPI><status>200
</status><message>OK
</message><version>3
</version><categories><category><id>4446
</id><name>Vehicles &amp; Parts &gt; Automotive Monitoring &gt; Radar Detectors &amp; Jammers
</name>
</category><category><id>4458
</id><name>Vehicles &amp; Parts &gt; Automotive Parts &gt; Automotive Batteries &gt; Fuel Cells
</name>
</category><category><id>4412
</id><name>Vehicles &amp; Parts &gt; Automotive Exterior &gt; License Plates
</name>
</category><category><id>3734
</id><name>Sporting Goods &gt; Outdoor Recreation &gt; Camping, Backpacking &amp; Hiking &gt; Camp Furniture
</name>
</category><category><id>4447
</id><name>Vehicles &amp; Parts &gt; Automotive Monitoring &gt; Speedometers
</name>
</category><category><id>4026
</id><name>Sporting Goods &gt; Team Sports &gt; Beach Volleyball &gt; Beach Volleyball Nets
</name>
</category><category><id>3724
</id><name>Sporting Goods &gt; Outdoor Recreation &gt; Archery &gt; Archery Armguards
</name>
</category><category><id>4024
</id><name>Sporting Goods &gt; Team Sports &gt; Beach Volleyball
</name>
</category><category><id>4025
</id><name>Sporting Goods &gt; Team Sports &gt; Beach Volleyball &gt; Beach Volleyball Balls
</name>
</category><category><id>4022
</id><name>Sporting Goods &gt; Team Sports &gt; Basketball &gt; Basketball Hoops
</name>
</category><category><id>4023
</id><name>Sporting Goods &gt; Team Sports &gt; Basketball &gt; Basketballs
</name>
</category><category><id>4020
</id><name>Sporting Goods &gt; Team Sports &gt; Basketball &gt; Basketball Hoop Parts &amp; Accessories &gt; Basketball Poles
</name>
</category><category><id>3725
</id><name>Sporting Goods &gt; Outdoor Recreation &gt; Archery &gt; Archery Targets
</name>
</category><category><id>3798
</id><name>Sporting Goods &gt; Outdoor Recreation &gt; Cycling &gt; Bicycle Parts &gt; Bicycle Forks
</name>
</category><category><id>4028
</id><name>Sporting Goods &gt; Team Sports &gt; Cheerleading &gt; Cheerleading Megaphones
</name>
</category><category><id>4029
</id><name>Sporting Goods &gt; Team Sports &gt; Cheerleading &gt; Pom-Poms
</name>
</category><category><id>4607
</id><name>Vehicles &amp; Parts &gt; Watercraft Parts &amp; Accessories &gt; Watercraft Care &gt; Watercraft Polishes
</name>
</category><category><id>4417
</id><name>Vehicles &amp; Parts &gt; Automotive Exterior &gt; Winch Parts
</name>
</category><category><id>344
</id><name>Arts &amp; Entertainment &gt; Artwork &gt; Prints
</name>
</category><category><id>345
</id><name>Arts &amp; Entertainment &gt; Artwork &gt; Weatherprints &amp; Outdoor Art
</name>
</category><category><id>346
</id><name>Arts &amp; Entertainment &gt; Collectibles
</name>
</category><category><id>347
</id><name>Arts &amp; Entertainment &gt; Collectibles &gt; Autographs
</name>
</category><category><id>340
</id><name>Arts &amp; Entertainment &gt; Artwork &gt; Paintings
</name>
</category><category><id>341
</id><name>Arts &amp; Entertainment &gt; Artwork &gt; Photographs
</name>
</category><category><id>342
</id><name>Arts &amp; Entertainment &gt; Artwork &gt; Photographs &gt; Stock Photographs
</name>
</category><category><id>343
</id><name>Arts &amp; Entertainment &gt; Artwork &gt; Posters &amp; Reproductions
</name>
</category><category><id>2918
</id><name>Home &amp; Garden &gt; Lawn &amp; Garden &gt; Outdoor Living &gt; Patio Umbrellas &amp; Sunshades
</name>
</category><category><id>3996
</id><name>Sporting Goods &gt; Racquet Sports &gt; Tennis &gt; Tennis Ball Savers
</name>
</category><category><id>3995
</id><name>Sporting Goods &gt; Racquet Sports &gt; Tennis &gt; Tennis Ball Launchers
</name>
</category>
字符串(575317)”
200
好啊
3.
4446
车辆和零件汽车监控雷达探测器和干扰机
4458
汽车及零件汽车零件汽车电池燃料电池
4412
车辆和零件汽车外部牌照
3734
运动用品户外休闲露营、背包和徒步旅行营地家具
4447
车辆和零件汽车监控车速表
4026
体育用品队体育沙滩排球沙滩排球网
3724
体育用品户外娱乐射箭护手
4024
运动用品队运动沙滩排球
4025
体育用品队体育沙滩排球沙滩排球球
4022
运动用品队运动篮球篮球圈
4023
运动用品队运动篮球
4020
运动用品团队运动篮球篮球篮球配件篮球杆
3725
体育用品户外娱乐射箭射箭靶
3798
运动用品户外休闲自行车配件自行车叉
4028
体育用品团队体育啦啦队啦啦队扩音器
4029
体育用品队体育啦啦队
4607
车辆及零件船艇零件及附件船艇保养船艇抛光机
4417
车辆和零件汽车外部绞车零件
344
艺术与娱乐艺术品印刷品
345
艺术和娱乐艺术品天气图和户外艺术
346
艺术和娱乐收藏品
347
艺术及娱乐收藏品签名
340
艺术与娱乐艺术品绘画
341
艺术及娱乐艺术作品照片
342
艺术和娱乐艺术品照片库存照片
343
艺术及娱乐艺术作品海报及复制品
2918
家庭和花园草坪和花园户外生活天井雨伞和遮阳棚
3996
运动用品球拍运动网球网球球拍
3995
运动用品网拍运动网球发射器

只是一堆类别,结果是字符串完全不可读,有没有办法将此XML响应作为带有curl的数组来获取?直接从它获取数组,还是需要手动将字符串转换为数组,如果有,最好的过程是什么。

curl不能对XML做任何事情。一些APIs将为您提供seralised数组和JSON响应。请检查它们,因为两者都更易于处理。否则,您需要使用PHP DOM读取XML并将其放入数组:


您应该使用扩展名和函数从字符串创建XML对象。之后,您可以像使用任何其他对象一样简单地使用它,并将其转换为数组(如果需要).

我不会在这里发布您的访问令牌。任何人都可以看到并使用它。修复它的唯一方法是删除帖子并重新创建。是的,为了安全起见,我实际上已将键值修改为不存在的键值