Preguntas de una entrevista para desarrollador Php en Yahoo

Por el 24 de Mayo de 2007

en: Negocio

En este blog publican una preguntas que supuestamente se hicieron en una entrevista de Yahoo, realmente no se si es veraz esta entrevista pero no deja de ser una buena manera para ver que nivel de Php manejamos.

Os propongo que comenteis los resultados a las preguntas para que aquellos que quieran comprobar sus resultados.

Las preguntas de la entrevista

1. Which of the following will not add john to the users array?

1. $users[] = ‘john’;
2. array_add($users,’john’);
3. array_push($users,‘john’);
4. $users ||= ‘john’;

2. What’s the difference between sort(), assort() and ksort? Under what circumstances would you use each of these?

3. What would the following code print to the browser? Why?

$num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;

4. What is the difference between a reference and a regular variable? How do you pass by reference & why would you want to?

5. What functions can you use to add library code to the currently running script?

6. What is the difference between foo() & @foo()?

7. How do you debug a PHP application?

8. What does === do? What’s an example of something that will give true for ‘==’, but not ‘===’?

9. How would you declare a class named “myclass” with no methods or properties?

10. How would you create an object, which is an instance of “myclass”?

11. How do you access and set properties of a class from within the class?

12. What is the difference between include & include_once? include & require?

13. What function would you use to redirect the browser to a new page?

1. redir()
2. header()
3. location()
4. redirect()

14. What function can you use to open a file for reading and writing?

1. fget();
2. file_open();
3. fopen();
4. open_file();

15. What’s the difference between mysql_fetch_row() and mysql_fetch_array()?

16. What does the following code do? Explain what’s going on there.

$date=’08/26/2003’;
print ereg_replace(“([0-9]+)/([0-9]+)/([0-9]+)”,\\2/\\1/\\3,$date);

17. Given a line of text $string, how would you write a regular expression to strip all the HTML tags from it?

18. What’s the difference between the way PHP and Perl distinguish between arrays and hashes?

19. How can you get round the stateless nature of HTTP using PHP?

20. What does the GD library do?

21. Name a few ways to output (print) a block of HTML code in PHP?

22. Is PHP better than Perl? – Discuss.

Enlaces Relacionados

El Tetris cumple 20 años
Juegos Web
Reconocimiento facial y Google
El mejor antivirus
Sitios para ver TV online gratis
Las chicas virtuales más guapas
8 lenguajes de programación que deberías aprender
¿Tus vecinos te roban ancho de banda?…Castígalos
Escuchando mp3 desde Gmail
Fácil sistema de autentificación (login, password) PHP
Llamadas gratis con VoipBuster
Crear un favicon.ico para tu Web
Lanzada la segunda beta de phpBB 3.0
Sitios para ver TV online gratis
Almacenar 256GB en un A4
iGoogle
Nuevo Windows Unattended Edition

5 Respuestas a Preguntas de una entrevista para desarrollador Php en Yahoo

Avatar

alexander

24 de Mayo de 2007 a las 7:47 am

Voy a responder a bote pronto las que creo que se jejejej:
1) La numero 1
2) Se que se utilizan para ordenar arrays pero no se la diferencia
3) 0 porque la variable no esta definida como global
4) Que si la pasas por referencia su variable se modificara tanto dentro como fuera de la funcion
13) La numero 3
14) La numero 2

Bueno hay algunas que no las contesto porque no las se y otras porque no estoy seguro.

Enhorabuena por el blog.

Avatar

Nach

24 de Mayo de 2007 a las 11:58 am

1) 4
2) No me lo sé de memoria, pero sort ordena un array de menor a mayor por el primer elemento, assort me imagino que se referián a asort y con ksort ordena manteniendo la clave de cada elemento.
3) 100
4) A una variable por referencia se le asigna otra variable, haces como una especie de “enlace”
5) includes y requires, no?
6) Con @ si hay algún error en la ejecución de la función no lo muestra en pantalla
7) Yo a base de print_r y die(); xD aunque en php5 ya hay try catchs
8) Creo recordar que con 3 = le estas indicando a la comprobación que ambas variables de la misma son del mismo tipo
9) No la entiendo muy bien… class myclass xD
10) $clase = new myclass();
11) No se traducir la frase :S No sé si se refiere a usar el “->”.
12) El como se comportan ante los errores, y entre require y include el propio nombre lo dice xD
13) No lo he usado nunca, pero con header.
14) fopen
15) Con …_array puedes recuperar el resultado de la consulta en distintos tipos de array, en …_row en un array corriente.
El resto es mucho texto y me he cansado… sorry xD

Avatar

Javier

25 de Mayo de 2007 a las 4:11 am

1) 4
2) sort ordena el valor, ksort ordena por clave y assort ni idea.
3) 10
4) La variable por referencia para la dirección de memoria de la variable, por lo tanto esta puede ser modificada incluso dentro de la función. Si la variable no se pasa por refencia al entrar en la función como parámetro se hace una copia que dura hasta que se acaba la función luego esta copia desaparece y el valor de la variable fuera de la función es la misma que antes de entrar en la misma.
6) Con la @ no de devuelven mensajes de warnings
7) Yo hago el debug con el método de echo,print_r y var_dump. Aunque hay alternativas mas profesionales como xdebug
8) El === hace una comparación tanto de valor como de tipo.
Ejemplo
$a = (int) 10;
$b = (float) 10;
if($a==$b) echo “Son iguales en valor.”;
else echo “No son iguales en valor”.;

if($a===$b) echo “Son iguales en valor y tipo”;
else echo “No son iguales en valor y tipo”;

En este caso se mostraría “Son iguales en valor. No son iguales en valor y tipo”
9) No lo se ahora mismo. Es probable que se pueda
10) $miclase = new myclass();
11) Si son públicas pues se puede acceder así
$miclase->propiedad;
si son privadas pues se puede recuperar el valor con funciones de Get y Set.
$miclase->Getpropiedad();
12) include incluye el fichero tantas veces como se llame. Y include_once solo incluye el fichero en la primera aparición. No tengo clara la diferencia entre include y require, diria que hacen mas o menos lo mismo.
13) 2. Yo utilizo header(‘location: pagina.php’);
14) 3. Utilizo fopen();
15) Díria que el mysql_fetch_row() te devuelve un array de una fila y el mysql_fetch_array() hace lo mismo pero el array puede ser numérico y/o asociativo.
16) substituye els números de la fecha por otros. Creo que el resultado sería 22/11/3333
17) ereg_replace(“< ([a-z][0-9])*>”,”",$code_html);
18) Ni idea
19) Si usando sesiones puedes recordar datos del usuario y sobrepasar el stateles.
20) Es una librería para realizar gráficos al vuelo. Es útil para hacer thubmnails o captchas.
21) echo “hola“;
< ?
//code php
?>
hola
< ?
// code php
?>
22) No he programado nunca en perl

Avatar

Spielberg

26 de Mayo de 2007 a las 7:46 am

Me ha gustado el examen este de conocimientos pero no sé si lo pasaré, aquí van mis respuestas;
1.- 4
2.- Creo que sort en valores en sentido ascendente, assort es en descendente y ksort es claves en ascendente (= no he acertado ninguno).
3.- 10
4.- Si pasas por referncia una variable a una funcion y esta cambia su valor dentro de la función lo mantendrá una vez ejecutada la función. Y por referncia el valor que tome dentro no se verá reflejado en la variable.
5.- ninguna
6.- que si @foo() da un fallo no se mostrará por pantalla.
7.- Sólo se me ocurre con php.ini en all_error y ejecutando la aplicación.
8.- === es exactitud y == es igualdad. Por ejemplo
a = ‘2′;
b = 2;
a == b = TRUE;
a === b = FALSE;//No son del mismo tipo
9.- si por poder class myclass{}
10.- miinstancia = new myclass;
11.- (mi ingles es un poco de andar por casa y no lo entiendo) pero supongo que tiene algo que ver con la propiedad public de los metodos y propiedades de los objetos.
12.- include incluye el archivo tantas veces como lo llamemos a lo largo de la ejecución, no así include_once que sólo lo incluirá una vez. La diferencia entre include y require es que require saca (si falla claro esta) un error fatal y include sólo un warning.
13.- 2
14.- 3
15.- mysql_fetch_array() devuelve una matriz asociativa e “indexada” (no es indexada pero podemos recorrela como tal) a la vez con los datos de una fila. mysql_fetch_row() devolverá los datos de una columna determinada.
16.- Sustituir los numeros de la fecha por los dados: 22/11/3333
17.- ni idea.
18.- Ni idea de perl
19.- no entiendo tu idioma
20.- Es una librería para el tratado de imégenes.
21.- echo, print, printf, =
23.- POR SUPUESTO

Avatar

fid

31 de Mayo de 2007 a las 10:24 am

de memoria y a bote pronto
1. la 4
2. sort(): ordena por contenido ascendente
assort(): …quien se acuerda…
ksort: ordena por la “key” del array
3. 10
4. por defecto las variables se pasan por valor (se crea una copia y se envia), para pasar por referencia se antepone un “&” oun “&_” …quien se acuerda…
si pasas por referencia la variable es modificada por la función, útil para variables grandes y pesadas, ganas tiempo al no crearse una duplicada, pero pierdes un poco de claridad y control sobre que da valor a las variables.
5. require(), include() con sus variantes de _once
6. @foo() si peta no te muestra mensaje de error
7. Quien lo sepa que me lo diga. A la antigua usanza, mensajitos “echo” de vez en cuando…
8. === es true cuando comparamos una cosa consigo misma, == puede dar true para dos instancias distintas de la misma clase.
a=5;
b=5;
a==b -> true
a===b -> false
9. Objetos en php… los uso pero no mucho o sea que …quien se acuerda…
10. object= new myclass(); …quien se acuerda…
11. A través de los métodos?
12. include: te incluye lo solicitado en el punto en que lo pides. Varios includes, varias veces que lo inserta.
include_once: te incluye lo solicitado si no lo había incluído anteriormente en el documento
require: como el include pero si no lo encuentra peta
13. Nomalmente uso header(“location:”) que la redirige al cargar, realmente no redirige el php sino el html… una redirección así más forzada quizá exista.
14. fopen();
15. mysql_fetch_array() te crea un array pero en los key te pone el nombre del campo y no sólo un número
16. Expresiones regulares… otra empanada mental a la que no quiero dedicar mis neuronas. Donde estén 10 línias de código claro, conciso y mantenible…
17. Vengaaaa dale ahí donde dueleeeeeeee
18. PHP and Perl: No me acabo el PHP y voy a empezar con el Perl, jaja.
19. How can you get round the stateless nature of HTTP using PHP?
20. A lot of things. GD: librería gráfica de grandes posibilidades.
21. echo, print, print_r…
22. PHP better than Perl: Pues cada uno será mejor para sus cosillas, no? Sino alguno de ellos hubiera desaparecido… he comentado que ni papa de perl?

Dejar un comentario

Patrocinadores

¿Interesado en patrocinar TuFunción?

Suscripción

Primera División