Δημιουργία array

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
sea
Δημοσιεύσεις: 6
Εγγραφή: 31 Ιαν 2006 15:58

Δημιουργία array

Δημοσίευση από sea » 10 Φεβ 2006 13:54

Έχω ένα string κάπως έτσι :
010 μπλα μπλα μπλα<br />100 μπλα<br />345 μπλα μπλα<br />.
Αυτό που θέλω είναι να δημιουργήσω ένα πίνακα οπου το array[1][1] θα είναι 010, το array[1][2] θα είναι μπλα μπλα μπλα, array[2][1] = 100, array[2][2] = μπλα κτλ. Γενικά σε κάθε σειρά οι 3 πρώτοι αριθμοί να είναι στη πρώτη στήλη του πίνακα και ολα τα υπόλοιπα στην δεύτερη. Καμιά ιδέα?

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Δημιουργία array

Δημοσίευση από panosru » 10 Φεβ 2006 15:21

epidi den mporesa na skeyto allon tropo sou eftiaksa ayth th function:

Κώδικας: Επιλογή όλων

<?PHP

$var  = "010 μπλα μπλα μπλα<br />100 μπλα<br />345 μπλα μπλα<br />";

function spase &#40;$input, $first_offset = null, $second_offset = null&#41;
&#123;
	$input = explode&#40;"<br />", $input&#41;;
	$input_num = count&#40;$input&#41;;	
	$input_num--;

	for &#40;$i = 0; $i < $input_num; $i ++&#41; &#123;
		ereg &#40;"^&#40;&#91;0-9&#93;&#123;3&#125;&#41; &#40;&#91;α-ωΑ-Ωa-zA-Z0-9 &#93;*&#41;$", $input&#91;$i&#93;, $parts&#41;;
		$output&#91;$i + 1&#93; = $parts;
	&#125;

	if &#40;is_null&#40;$first_offset&#41; && is_null&#40;$second_offset&#41;&#41; &#123;
		return &#40;$output&#41;;
	&#125; elseif &#40;!is_null&#40;$first_offset&#41; && is_null&#40;$second_offset&#41;&#41; &#123;
		return &#40;$output&#91;$first_offset&#93;&#41;;
	&#125; elseif &#40;!&#40;is_null&#40;$first_offset&#41; && is_null&#40;$second_offset&#41;&#41;&#41; &#123;
		return &#40;$output&#91;$first_offset&#93;&#91;$second_offset&#93;&#41;;
	&#125;
&#125;

print&#40;spase&#40;$var,1,2&#41;&#41;;
// tha mas emfanisei to μπλα μπλα μπλα 
?>

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Δημιουργία array

Δημοσίευση από panosru » 10 Φεβ 2006 23:05

btw an skeyteis kapoio kalytero onoma gia thn function pes to mou giati poio poly ora mou phre na skeyto pos tha thn onomaso para na thn syntakso :lol:

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

Δημιουργία array

Δημοσίευση από cherouvim » 11 Φεβ 2006 08:25

Κώδικας: Επιλογή όλων

<?php

function tokenize&#40;$text&#41; &#123;
	$lines = explode&#40;"<br />", $text&#41;;
	foreach&#40;$lines as $line&#41; &#123;
		$index = strpos&#40;$line, " "&#41;;
		$ret&#91;&#93; = array&#40;substr&#40;$line, 0, $index&#41;, substr&#40;$line, $index + 1&#41;&#41;;
	&#125;
	return $ret;
&#125;


//example use
$example = "010 foo bar example.com<br />100 foobar<br />345 
echo "<pre>";
print_r&#40;tokenize&#40;$example&#41;&#41;;
echo "</pre>";

?>

Κώδικας: Επιλογή όλων

Array
&#40;
    &#91;0&#93; => Array
        &#40;
            &#91;0&#93; => 010
            &#91;1&#93; => foo bar example.com
        &#41;

    &#91;1&#93; => Array
        &#40;
            &#91;0&#93; => 100
            &#91;1&#93; => foobar
        &#41;

    &#91;2&#93; => Array
        &#40;
            &#91;0&#93; => 345
            &#91;1&#93; => example foo.com
        &#41;

&#41;
Ena pithano onoma einai to tokenize. Spaei to input se tokens symfona me ton idiaitero tropo pou orisame. Ypopsin oti kalo einai afti i diergasia na ginete mia fora kai na milame katefthian pano sto nested array pou exei prokipsei apo to output tis function, para na kaloume tin 'spase' kathe fora pou theloume ena token.

Telos ta arrays stin PHP einai zero based (diladi arhizoun apo to 0, kai oxi apo to 1) ara to proto element einai to $array[0][0] kai oxi to $array[1][1].

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Δημιουργία array

Δημοσίευση από panosru » 11 Φεβ 2006 14:50

oraio to tokenize san onoma
ontos einai kalhteros o tropos sou giati me ton dikomou prepei na kaleis thn function gia na pareis to array! :D

nai ta arrays sthn PHP (an den kano lathos se oles tis glosses - gia to web toulaxiston) einai zero based, alla afou zhthse na arxize me to 1 den bariesai tora :P

episeis sea an mperdeytikes me thn function tou cherouvim akou edo ti tha kaneis:
1) tha kaleseis thn function
2) tha oriseis mia metablhth opou tha einai h function
3) h metablhth sou tha einai to array pou kanei output h function.
opote:

Κώδικας: Επιλογή όλων

function tokenize&#40;$text&#41; &#123;
   $lines = explode&#40;"<br />", $text&#41;;
   foreach&#40;$lines as $line&#41; &#123;
      $index = strpos&#40;$line, " "&#41;;
      $ret&#91;&#93; = array&#40;substr&#40;$line, 0, $index&#41;, substr&#40;$line, $index + 1&#41;&#41;;
   &#125;
   return $ret;
&#125;
kalesame thn function

Κώδικας: Επιλογή όλων

$foo = tokenize&#40;$example&#41;;
orisame to thn $foo pou exei os value to output ths function tokenize opote:

Κώδικας: Επιλογή όλων

print &#40;$foo&#91;0&#93;&#91;0&#93;&#41;;
//mas emfanizei to 010
PS: oraios tropos cherouvim den phge to myalo mou na to kano me str! :D

sea
Δημοσιεύσεις: 6
Εγγραφή: 31 Ιαν 2006 15:58

Δημιουργία array

Δημοσίευση από sea » 14 Φεβ 2006 14:40

Thanks paidia!!!! :clap: :lol: :lol: :lol:

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες