Jump to content
php.lv forumi

Explode() empty delimiter


senters

Recommended Posts

$file_name_only = explode($extension, $file->name);

 

Tagad aizej uz php lapu attiecīgo explode() manuāli, izlasi kas tas tāds delimiteris ir, sasprindzini smadzenes un mēģini izdomāt, kas par problēmu :)

 

P.S. Es ceru, ka neviens priekšā neteiks, jo cilvēkam ir jāiemācās neskriet uz forumu katras sīkās kļūdas dēļ! :)

Edited by briedis
Link to comment
Share on other sites

Briedi, nedaudz atslābsti :)

Par to, kas ir explode() un limiteris zinu, mans piemērs lieliski strādāja, problēma parādījās kopš pārcēlu attēla uploadu kopā ar insertu uz db.

 

Jocīgi, ka pirmīt ar mainīgo $extension limitera parametrā strādaja, bet tagad nē.

 

Liekot šādi - " " -> $file_name_only = explode(" ", $file->name); darbojas.

Edited by senters
Link to comment
Share on other sites

Esmu ļoti atslābis :)

 

ir vēl viena maģiska funkcija - var_dump($extension);

 

Vispār šīs rindiņas ir diezgan mistiskas-

$extension = strrchr($file->name, '.');
//$extension = strtolower(substr(strrchr($file->name, '.'), 1));

 

 

Varētu mierīgi aizstāt ar:

$extension = strtolower(array_pop(explode('.', $file->name)));


 

Protams, der arī pārbaudīt, vai eksistē vispār tāds paplašinājums failā.

Link to comment
Share on other sites

Šīs lietas sakarā radās viens jautājums: Kā no klases UploadHandler dabūt ārā mainīgajā faila nosaukumu, lai faila beigās to nodotu sql insertā laukā "image_small" (http://screencast.com/t/GgBFKsDo)?

 

Kods - http://pastie.org/2605173

 

 

Vai tā vispār ir iespējams izdarīt?

$jauns_mainigais_arpus_klaes = $mainigais_klasee?

Link to comment
Share on other sites

Iekš klases:

 

function get_stuff() {

 return $this->stuff;

}

 

Ārpusē:

 

$clazz = new ClassName();

$freedom = $clazz->get_stuff();

 

Ja vien, tas nav statiskais mainīgais...

Link to comment
Share on other sites

daGrevi, es saprotu, ka kods ir forša lieta, bet dzimšanas diena ir un paliek dzimšanas diena! :)

Jā un paldies par piemēru, paskatīšos tūlīt vai šādi strādās.

 

 

Manā gadījumā funkcija private function get_file_object($file_name) atgriež faila nosaukumu.

 

Bet rakstot:

 

$xxx = new UploadHandler();

$image_small = $xxx-> get_file_object();

 

izmet šādu error - http://screencast.com/t/AuDf9d0mqS1i

Edited by senters
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...