Wat gaat er fout in deze class?
Ik heb een klass waarmee ik random waarde uit een tabel wil genereren om zodoende de letters uit een woord random kleuren te geven..
maar ik krijg de foutmelding:
Warning: array_rand() [function.array-rand]: First argument has to be an array in G:\xampp\htdocs\includes\klas.php on line 13
de class:
Code (php)
en zo maak ik er in mn html een reference van:
Wat gaat er nu fout?
Groet,
Vincent
test is geen string (doe bv 'test' ) en je moet $this->arr gebruiken. (basis php)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
funktie(test);
function funktie($var){
$arr = array( '#7DE047', '#9448B7', '#5DFAF4', '#8A898E', '#31C1F6');
$lenVar = strlen($var);
for($i=0; $i<$lenVar ; $i++){
$ind= array_rand($arr, 1);
echo "<span style=\" color: $color[$ind]; \">$var[$i]</span>";
}
}
?>
funktie(test);
function funktie($var){
$arr = array( '#7DE047', '#9448B7', '#5DFAF4', '#8A898E', '#31C1F6');
$lenVar = strlen($var);
for($i=0; $i<$lenVar ; $i++){
$ind= array_rand($arr, 1);
echo "<span style=\" color: $color[$ind]; \">$var[$i]</span>";
}
}
?>
wel werkt.....
Ik weet dat een string met "" of '' werkt..maar in dit geval zonder dus blijkbaar ook. Dat is het probleem dus niet.
Gewijzigd op 01/01/1970 01:00:00 door niVin
dan werkt het wel.
Is nog steeds basis PHP, ga eens een tutorial bekijken ofzo..
strlen is voor strings en niet voor array()'s.
Daar heb je count voor.
@SanThe, $var is ook een string ;) hij vult alleen geen goede stringwaarde in :P
dit moet je ff aanpassen dan werkt hij :)
Code (php)
Gewijzigd op 01/01/1970 01:00:00 door RvW Of toch niet
$arr = $this -> arr; in de functie definiëren was de oplossing!
Leroy schreef op 02.09.2008 19:14:
@SanThe, $var is ook een string ;) hij vult alleen geen goede stringwaarde in :P
maar als ik dus: funktie(test) doe, krijg ik wel netjes mn resultaat in de browser....blijkbaar zijn de quotes in dit geval toch niet noodzakelijk.
WebRtistik schreef op 02.09.2008 19:19:
heb um al:)
$arr = $this -> arr; in de functie definiëren was de oplossing!
$arr = $this -> arr; in de functie definiëren was de oplossing!
Dit zei ik dus al 2 keer...
Quote:
maar als ik dus: funktie(test) doe, krijg ik wel netjes mn resultaat in de browser....blijkbaar zijn de quotes in dit geval toch niet noodzakelijk.
maar als ik dus: funktie(test) doe, krijg ik wel netjes mn resultaat in de browser....blijkbaar zijn de quotes in dit geval toch niet noodzakelijk.
Je MOET echt wel quotes gebruiken voor strings (liefst de enkele), dit is voor php zo en voor alle andere scripting talen!!! Dat het hier nu toevallig wel werkt ontgaat mij dan ook, en is zeker geen manier om het aan te leren. (normaal zou het niet eens mogen werken zo)
Leroy schreef op 02.09.2008 19:14:
@SanThe, $var is ook een string ;) hij vult alleen geen goede stringwaarde in :P
Ik heb de namen verward. Oftewel niet goed gekeken. Oeps. ;-)
WebRtistik schreef op 02.09.2008 19:19:
heb um al:)
$arr = $this -> arr; in de functie definiëren was de oplossing!
maar als ik dus: funktie(test) doe, krijg ik wel netjes mn resultaat in de browser....blijkbaar zijn de quotes in dit geval toch niet noodzakelijk.
$arr = $this -> arr; in de functie definiëren was de oplossing!
Leroy schreef op 02.09.2008 19:14:
@SanThe, $var is ook een string ;) hij vult alleen geen goede stringwaarde in :P
maar als ik dus: funktie(test) doe, krijg ik wel netjes mn resultaat in de browser....blijkbaar zijn de quotes in dit geval toch niet noodzakelijk.
Jah, die oplossing heeft Hipska ook al gegeven. Wel lezen he............
Verder als je dat fap scriptje van je draait "die het wel doet" krijg je dit:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Notice: Use of undefined constant test - assumed 'test' in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 5
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
t
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
e
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
s
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
t
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
t
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
e
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
s
Notice: Undefined variable: color in C:\xampp\htdocs\test\eval.php(5) : eval()'d code on line 14
t
met
D'r boven. Ooit gehoort van debuggen?
Strings moeten altijd tussen quotes.
Spuit 11.
Is meneertje nou aangebrand?
Als je niet normaal antwoord kan geven zou ik als ik jou was gewoon een ander forum zoeken..wat een kanzloze ben jij zeg.
Alle andere bedankt voor de (wel normale)reacties..!
WebRtistik schreef op 02.09.2008 19:41:
@Karl ....hahahaah.
Is meneertje nou aangebrand?
Is meneertje nou aangebrand?
Nee.
WebRtistik schreef op 02.09.2008 19:41:
Als je niet normaal antwoord kan geven zou ik als ik jou was gewoon een ander forum zoeken..wat een kanzloze ben jij zeg.
Als jij nou eens normaal php leert, en leest wat andere al een paar keer hebben gezegt zie je d'r gelijk een stuk minder stommer uit.

En?
@Chris: Ik krijg zoveel spam, dit kan er wel bij... Maarja, toch liever minder hé?
WebRtistik schreef op 02.09.2008 19:41:
@Karl ....hahahaah.
Is meneertje nou aangebrand?
Als je niet normaal antwoord kan geven zou ik als ik jou was gewoon een ander forum zoeken..wat een kanzloze ben jij zeg.
Alle andere bedankt voor de (wel normale)reacties..!
Is meneertje nou aangebrand?
Als je niet normaal antwoord kan geven zou ik als ik jou was gewoon een ander forum zoeken..wat een kanzloze ben jij zeg.
Alle andere bedankt voor de (wel normale)reacties..!
Nee jij dan met je vertaling naar het (niet kloppende) Nederlands? Hou oud ben je, 14?
Wow! Wat een stoere PM! Je bent denk ik nu wel helemaal onder de indruk of niet Karl? (Sarcasme...)
Gewijzigd op 01/01/1970 01:00:00 door - -