Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP read a file into an array

Tags:

php

I have a file (Test.txt) with the following data: 1,0

I am wanting to read the contents of this file into an array and then print the variables. Here is my current code:

    function readUserDetails($username) {
    $userDetails = explode(',', file($username.".txt"));
    print($userDetails[0].$userDetails[1]);
}

If I call the readUserDetails function with the folowing parameters: "Test", I get the following errors:

Notice: Array to string conversion in C:\Users\s13\Game\Game6\default.php on line 128 Notice: Undefined offset: 1 in C:\Users\s13\Game\Game6\default.php on line 129 Array

Can I please have some help to get this working?

like image 364
user1383147 Avatar asked Apr 20 '26 09:04

user1383147


2 Answers

The PHP file() function reads a file into an array, one line of the file into each array element. See http://php.net/manual/en/function.file.php. explode() expects a string. Look at what file() is reading to see if it's what you want:

<?php
   ...
   $userDetails = file($username.".txt");
   print_r($userDetails);
?>
like image 137
gregjor Avatar answered Apr 22 '26 23:04

gregjor


file($username.".txt") already returns you an array and you are trying to explode an array with , delimeter

Try this

function readUserDetails($username) {
  $userDetails = explode(',', file_get_contents($username.".txt"));
  print($userDetails[0].$userDetails[1]);
}
like image 29
Broncha Avatar answered Apr 22 '26 23:04

Broncha



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!