View Full Version : Include and arrays

07-24-2002, 10:18 PM

Slight problem with pulling data from arrays stored in an included file. If I store the arrays in the same PHP file that is displaying the information, this works fine, but when I store the arrays in a seperate file and include() it, it can't find the data. I'm trying to keep all the arrays in one file by themselves to make changing things easier. Here's what I have come up with.

This is an excerpt from index.php

Function: draw_body
Include: none
Purpose: Draw body text

<?php include('arrays.php'); ?>
<table width="100%" border="0" cellspacing="5" cellpadding="2">
<td class="body2" height="100">
for ( $i = 0; $i <= $warders; $i++ )
echo $warArray[$i];
echo "<br>";

This is from arrays.php

$warArray[0] = 'Asandir';
$warArray[1] = 'Caellach';
$warArray[2] = 'Caldamus';
$warArray[3] = 'Drizzt';
$warArray[4] = 'Flarn';
$warArray[5] = 'Jaryd';
$warArray[6] = 'Kale';
$warArray[7] = 'Kodel';
$warArray[8] = 'Kordac';
$warArray[9] = 'Lanth';
$warArray[10] = 'Makojin';
$warArray[11] = 'Mallagant';
$warArray[12] = 'Mica';
$warArray[13] = 'Narival';
$warArray[14] = 'Navvar';
$warArray[15] = 'Phostan';
$warArray[16] = 'Rance';
$warArray[17] = 'Ransard';
$warArray[18] = 'Rylas';

$warders = count( $warArray );

Thanks in advance for any advice.

07-24-2002, 10:32 PM
I just copied and pasted your coding and it ran just fine. Is that happening on your web hosts server or a development server you are running at home?

07-24-2002, 10:41 PM
It's happening on both my dev box and my server. Thinking it may be a global setting kind of thing?

07-24-2002, 11:04 PM
Possibly. Firepages my fellow mod may be able to shed some light on that area.

07-24-2002, 11:15 PM
To avoid the possibility I might have overlooked something small ( entirely possible ), I tried adding this into the index.php

$success = @include('arrays.php');
if ( !$success )
echo "Could not include the arrays file. Trying another method.";
$again = @include('/home/aww/public_html/tm/arrays.php');
if ( !$again )
echo "Could not include the arrays file again.";
$useroot = @include( $DOCUMENT_ROOT . 'arrays.php');
if ( !$useroot )
echo "Tried using the doc root that time. No go.";

I received all three errors on page load. :eek:

07-25-2002, 03:02 AM
sorry, but like Spooks I can see no reason why that code would not work under any circumstances unless there was a problem with the include path in the php.ini, in saying that I see you tried the absolute path which should work in anycase.

I used include './sample_array.txt';
but all of your methods should have worked with the possible exception of $DOCUMENT_ROOT which may give a misleading value in a script aliased directory (and is best now accessed via $_SERVER[DOCUMENT_ROOT]

try running this to see if your include path has anything strange in it

echo ini_get('include_path');

07-25-2002, 06:47 AM
It just returned the path to the php installation.

It works by locating the arrays within the index.php, so I'll stick with that. Thanks for the help. :)