Maison > Article > développement back-end > PHP 如何解析字符串
PHP
{data_sell,11001,reputation,38200,{sell_reward,0,0,0,0,[],0,[{new_ger,11402,1,0}]},1,-1}.{data_sell,11002,reputation,11900,{sell_reward,0,0,0,0,[],0,[{new_ger,11403,1,0}]},1,-1}.{data_sell,11003,reputation,11050,{sell_reward,0,0,0,0,[],0,[{new_ger,11405,1,0}]},1,-1}.{data_sell,11004,reputation,40000,{sell_reward,0,0,0,0,[],0,[{new_ger,11401,1,0}]},1,-1}.{data_sell,11005,reputation,11050,{sell_reward,0,0,0,0,[],0,[{new_ger,11406,1,0}]},1,-1}.{data_sell,11006,reputation,11050,{sell_reward,0,0,0,0,[],0,[{new_ger,11407,1,0}]},1,-1}.{data_sell,11007,reputation,10000,{sell_reward,0,0,0,0,[],0,[{new_ger,11410,1,0}]},1,-1}.{data_sell,11008,reputation,9600,{sell_reward,0,0,0,0,[],0,[{new_ger,11412,1,0}]},1,-1}.{data_sell,11009,reputation,10650,{sell_reward,0,0,0,0,[],0,[{new_ger,11408,1,0}]},1,-1}.{data_sell,11010,reputation,8150,{sell_reward,0,0,0,0,[],0,[{new_ger,11415,1,0}]},1,-1}.{data_sell,11011,reputation,34600,{sell_reward,0,0,0,0,[],0,[{new_ger,11414,1,0}]},1,-1}.{data_sell,11012,reputation,10000,{sell_reward,0,0,0,0,[],0,[{new_ger,11411,1,0}]},1,-1}.{data_sell,11013,reputation,34000,{sell_reward,0,0,0,0,[],0,[{new_ger,11409,1,0}]},1,-1}.{data_sell,11014,reputation,9600,{sell_reward,0,0,0,0,[],0,[{new_ger,11413,1,0}]},1,-1}.{data_sell,11015,reputation,11600,{sell_reward,0,0,0,0,[],0,[{new_ger,11404,1,0}]},1,-1}.{data_sell,11016,reputation,12500,{sell_reward,0,0,0,0,[],0,[{new_ger,12406,1,0}]},1,-1}.{data_sell,11017,reputation,39400,{sell_reward,0,0,0,0,[],0,[{new_ger,12401,1,0}]},1,-1}.{data_sell,11018,reputation,34000,{sell_reward,0,0,0,0,[],0,[{new_ger,12414,1,0}]},1,-1}.{data_sell,11019,reputation,13200,{sell_reward,0,0,0,0,[],0,[{new_ger,12402,1,0}]},1,-1}.{data_sell,11020,reputation,13050,{sell_reward,0,0,0,0,[],0,[{new_ger,12404,1,0}]},1,-1}.{data_sell,11021,reputation,38800,{sell_reward,0,0,0,0,[],0,[{new_ger,12403,1,0}]},1,-1}.{data_sell,11022,reputation,12800,{sell_reward,0,0,0,0,[],0,[{new_ger,12405,1,0}]},1,-1}.{data_sell,11023,reputation,10150,{sell_reward,0,0,0,0,[],0,[{new_ger,12413,1,0}]},1,-1}.{data_sell,11024,reputation,11450,{sell_reward,0,0,0,0,[],0,[{new_ger,12411,1,0}]},1,-1}.{data_sell,11025,reputation,12550,{sell_reward,0,0,0,0,[],0,[{new_ger,12407,1,0}]},1,-1}.
{data_sell,11001,reputation,38200,{sell_reward,0,0,0,0,[],0,[{new_ger,11402,1,0}]},1,-1}.{data_sell,11002,reputation,11900,{sell_reward,0,0,0,0,[],0,[{new_ger,11403,1,0}]},1,-1}.{data_sell,11003,reputation,11050,{sell_reward,0,0,0,0,[],0,[{new_ger,11405,1,0}]},1,-1}.{data_sell,11004,reputation,40000,{sell_reward,0,0,0,0,[],0,[{new_ger,11401,1,0}]},1,-1}.{data_sell,11005,reputation,11050,{sell_reward,0,0,0,0,[],0,[{new_ger,11406,1,0}]},1,-1}.{data_sell,11006,reputation,11050,{sell_reward,0,0,0,0,[],0,[{new_ger,11407,1,0}]},1,-1}.{data_sell,11007,reputation,10000,{sell_reward,0,0,0,0,[],0,[{new_ger,11410,1,0}]},1,-1}.{data_sell,11008,reputation,9600,{sell_reward,0,0,0,0,[],0,[{new_ger,11412,1,0}]},1,-1}.{data_sell,11009,reputation,10650,{sell_reward,0,0,0,0,[],0,[{new_ger,11408,1,0}]},1,-1}.{data_sell,11010,reputation,8150,{sell_reward,0,0,0,0,[],0,[{new_ger,11415,1,0}]},1,-1}.{data_sell,11011,reputation,34600,{sell_reward,0,0,0,0,[],0,[{new_ger,11414,1,0}]},1,-1}.{data_sell,11012,reputation,10000,{sell_reward,0,0,0,0,[],0,[{new_ger,11411,1,0}]},1,-1}.{data_sell,11013,reputation,34000,{sell_reward,0,0,0,0,[],0,[{new_ger,11409,1,0}]},1,-1}.{data_sell,11014,reputation,9600,{sell_reward,0,0,0,0,[],0,[{new_ger,11413,1,0}]},1,-1}.{data_sell,11015,reputation,11600,{sell_reward,0,0,0,0,[],0,[{new_ger,11404,1,0}]},1,-1}.{data_sell,11016,reputation,12500,{sell_reward,0,0,0,0,[],0,[{new_ger,12406,1,0}]},1,-1}.{data_sell,11017,reputation,39400,{sell_reward,0,0,0,0,[],0,[{new_ger,12401,1,0}]},1,-1}.{data_sell,11018,reputation,34000,{sell_reward,0,0,0,0,[],0,[{new_ger,12414,1,0}]},1,-1}.{data_sell,11019,reputation,13200,{sell_reward,0,0,0,0,[],0,[{new_ger,12402,1,0}]},1,-1}.{data_sell,11020,reputation,13050,{sell_reward,0,0,0,0,[],0,[{new_ger,12404,1,0}]},1,-1}.{data_sell,11021,reputation,38800,{sell_reward,0,0,0,0,[],0,[{new_ger,12403,1,0}]},1,-1}.{data_sell,11022,reputation,12800,{sell_reward,0,0,0,0,[],0,[{new_ger,12405,1,0}]},1,-1}.{data_sell,11023,reputation,10150,{sell_reward,0,0,0,0,[],0,[{new_ger,12413,1,0}]},1,-1}.{data_sell,11024,reputation,11450,{sell_reward,0,0,0,0,[],0,[{new_ger,12411,1,0}]},1,-1}.{data_sell,11025,reputation,12550,{sell_reward,0,0,0,0,[],0,[{new_ger,12407,1,0}]},1,-1}.
貌似是想解析为数组
mark关注下ia
如果想把上述字符串解析为数组的话,要是我来做,我会:
1.把上述字符串储存为一个数组;
2.计算该数组(或字符串)的长度;
3.采用循环(for,while等),依次判断每个字符,分辨出{},_[] 数字和字母;
4.把解析的结果依次用多维数组记录下来;
5.对这些数组,你就可以尽情使用了。
上面所涉及到的字符串函数在我给出的链接网页上都有。
function parseConf($id){ static $configList = array(); if(empty($configList)){ $path = FCPATH.APPPATH.'config/data_sell.config'; if (file_exists($path )) { $handle = fopen($path, "r"); while (!feof($handle)) { $buffer = fgets($handle); preg_match('/\{data_sell,(\d+),.*\{new_item,(\d+),/',$buffer,$match_array); if($match_array[1] && $match_array[2]){ $configList[$match_array[1]] = $match_array[2]; } } fclose($handle); } } if(isset($configList[$id])){ return $configList[$id]; } return null; }
3楼的哥们,送你100分了