一道面试题,求思路,求代码。高分

时间:2022-04-28 11:28:16
有如下所示的一个分号隔数据文件:
每个 STRING 都是一个随机的字符串,长度未知;每行有多个 STRING ,个数位置:共有多少行也未知。
请问次数据文件必须在满足什么条件下才能用PHP解析出第N行的第X个 STRING,架设满足了这些条件,请写出解析方法或者思路。

STRING;STRING;STRING;......
STRING;STRING;STRING;......
STRING;STRING;STRING;......

15 个解决方案

#1


一道面试题,求思路,求代码。高分
一般面试题都能火。1f.坐等高手。

#2


不考虑其它 单就实现功能
直接用file()函数读取文件 每一行是数组的一个单元 N行就是数组的key 再把这一行以; 拆分 得出第X个

#3


mark,看题目不是很明白

#4


没看懂

#5


好深奥啊

#6


引用 2 楼 heyli 的回复:
不考虑其它 单就实现功能
直接用file()函数读取文件 每一行是数组的一个单元 N行就是数组的key 再把这一行以; 拆分 得出第X个


要是STRING里面随机出;号呢?

#7


引用 6 楼 qq277049 的回复:
要是STRING里面随机出;号呢?


要是这样子说的话 STRING;STRING; 我完全可以把这一个当成一个字符串 那就根本不存在第X个 一整行都是一个
是吧

#8


$string = "
STRING;STRING;STRING;......
STRING;STRING;STRING;......
STRING;STRING;STRING;......
"


$words=explode(";",$string);

然后$words就应该可以认为是一个二维数组了吧...好吧,我是来混的....

#9


我看了三遍,不明白题目要问的是什么,或者是答那方面的东西。。。。

#10


function get_str($len, $location)
{
$content = file_get_contents('str.txt');
$str_arr = explode("\n", $content);

foreach($str_arr AS $key => $val)
    $str_arr[$key][] = explode(';', $val);

return (isset($str_arr[$len][$location])) ? $str_arr[$len][$location]:false;

}

不知有没问题 

#11


引用 9 楼 yangball 的回复:
我看了三遍,不明白题目要问的是什么,或者是答那方面的东西。。。。

认真你就输了 用猜的 然后多大数人都是用拼音输入法 再然后就能猜出来了

#12


引用 11 楼 heyli 的回复:
引用 9 楼 yangball 的回复:

我看了三遍,不明白题目要问的是什么,或者是答那方面的东西。。。。

认真你就输了 用猜的 然后多大数人都是用拼音输入法 再然后就能猜出来了


哈哈哈,你别说,在这回答问题还真锻炼“悟性” 值。yangball 是在*吧?用的笔划输入法?

#13


呵呵。。都是猜。

上面的测了,这样子就好了 =_= 。

$str_arr[$key] [] = explode(';', $val);  删掉

#14


晕了  哥哥 你能不能不要用谐音啊 !!!还得猜题目的意思

#15


引用 2 楼 heyli 的回复:
不考虑其它 单就实现功能
直接用file()函数读取文件 每一行是数组的一个单元 N行就是数组的key 再把这一行以; 拆分 得出第X个


同意。

#1


一道面试题,求思路,求代码。高分
一般面试题都能火。1f.坐等高手。

#2


不考虑其它 单就实现功能
直接用file()函数读取文件 每一行是数组的一个单元 N行就是数组的key 再把这一行以; 拆分 得出第X个

#3


mark,看题目不是很明白

#4


没看懂

#5


好深奥啊

#6


引用 2 楼 heyli 的回复:
不考虑其它 单就实现功能
直接用file()函数读取文件 每一行是数组的一个单元 N行就是数组的key 再把这一行以; 拆分 得出第X个


要是STRING里面随机出;号呢?

#7


引用 6 楼 qq277049 的回复:
要是STRING里面随机出;号呢?


要是这样子说的话 STRING;STRING; 我完全可以把这一个当成一个字符串 那就根本不存在第X个 一整行都是一个
是吧

#8


$string = "
STRING;STRING;STRING;......
STRING;STRING;STRING;......
STRING;STRING;STRING;......
"


$words=explode(";",$string);

然后$words就应该可以认为是一个二维数组了吧...好吧,我是来混的....

#9


我看了三遍,不明白题目要问的是什么,或者是答那方面的东西。。。。

#10


function get_str($len, $location)
{
$content = file_get_contents('str.txt');
$str_arr = explode("\n", $content);

foreach($str_arr AS $key => $val)
    $str_arr[$key][] = explode(';', $val);

return (isset($str_arr[$len][$location])) ? $str_arr[$len][$location]:false;

}

不知有没问题 

#11


引用 9 楼 yangball 的回复:
我看了三遍,不明白题目要问的是什么,或者是答那方面的东西。。。。

认真你就输了 用猜的 然后多大数人都是用拼音输入法 再然后就能猜出来了

#12


引用 11 楼 heyli 的回复:
引用 9 楼 yangball 的回复:

我看了三遍,不明白题目要问的是什么,或者是答那方面的东西。。。。

认真你就输了 用猜的 然后多大数人都是用拼音输入法 再然后就能猜出来了


哈哈哈,你别说,在这回答问题还真锻炼“悟性” 值。yangball 是在*吧?用的笔划输入法?

#13


呵呵。。都是猜。

上面的测了,这样子就好了 =_= 。

$str_arr[$key] [] = explode(';', $val);  删掉

#14


晕了  哥哥 你能不能不要用谐音啊 !!!还得猜题目的意思

#15


引用 2 楼 heyli 的回复:
不考虑其它 单就实现功能
直接用file()函数读取文件 每一行是数组的一个单元 N行就是数组的key 再把这一行以; 拆分 得出第X个


同意。