displayabc
V2EX  ›  PHP

PHP 如何分割一个特别长的字符串?

  •  
  •   displayabc · Jul 4, 2014 · 4310 views
    This topic created in 4365 days ago, the information mentioned may be changed or developed.
    有1千万个数字用逗号连接的的长字符串,怎么分割成数组,而且不至于内存超出默认的128M的限制?
    5 replies    2014-07-04 16:37:17 +08:00
    alex321
        1
    alex321  
       Jul 4, 2014
    你是说 csv 文件咩?
    shiny
        2
    shiny  
    PRO
       Jul 4, 2014
    1千万个数字不算很多吧?
    如果超过内存限制就用 fread 一点点读,读到逗号就把之前读的数字添加到数组里。
    不过数组仍有超过内存限制的可能。
    ferock
        3
    ferock  
    PRO
       Jul 4, 2014
    关键是读来干嘛?什么信息会有1000W 个?
    54xiaobin
        4
    54xiaobin  
       Jul 4, 2014
    1kw个数字分割成数组干嘛。。。
    sampeng
        5
    sampeng  
       Jul 4, 2014
    用刀切割。。。哈哈跑题了。
    1千万个数字。用逗号分割。。数字有多大?
    算平均10位好吧。加个逗号1
    (11*10000000)/1024/1024=104M.没超过默认限制over。。。但是。可能会超过处理时间30s。因为不知道你要干什么。。。你这个问题比较纠结。。只说怎么切。又不说干嘛用。。让我们怎么帮忙呢?

    高端点的可以先把这个字符串文本切分成10个小文件。然后再做处理。
    如果只是为了分析1千万个数字。。为毛要用php。。。。不理解= =!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5223 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 09:16 · PVG 17:16 · LAX 02:16 · JFK 05:16
    ♥ Do have faith in what you're doing.