Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: instance of string
 
 автор: Eugene77   (18.12.2008 в 19:51)   письмо автору
 
 

Catchable fatal error: Argument 1 passed to words2array() must be an instance of string, string given


Написал при объявлении функции function my_func(string $s) и получил такое сообщение.
Кто ж мне надо писать, чтобы функция принимала строку в качестве аргумента.
Ну, или переменную,которая содержит в себе строку?

  Ответить  
 
 автор: SteAlzzer   (18.12.2008 в 20:40)   письмо автору
 
   для: Eugene77   (18.12.2008 в 19:51)
 

а можно саму функцию показать? Просто не совсем понятно, в чем ошибка, и что вы хотите.

  Ответить  
 
 автор: BinLaden   (18.12.2008 в 20:47)   письмо автору
 
   для: Eugene77   (18.12.2008 в 19:51)
 

В PHP не нужно предварительно указывать её тип.

  Ответить  
 
 автор: Eugene77   (19.12.2008 в 17:38)   письмо автору
 
   для: BinLaden   (18.12.2008 в 20:47)
 

>В PHP не нужно предварительно указывать её тип.

Я никогда и не указывал, но потом становится трудно ориентироваться в своих же функциях.
Приходится смотреть их текст, чтобы определить какой именно аргумент эта функция принимает, а если явно указать тип аргумента, то он сразу в подсказке редактора появляется.
так существенно удобней и быстрей работать.

так как же мне указать тип аргумента string?

Вот так не проходит:

function myfunction(string $s){}


вызов:
myfunction("Получи обычную строку!");

Вызывает вышеупомянутую фатальную ошибку

  Ответить  
 
 автор: BinLaden   (19.12.2008 в 17:42)   письмо автору
 
   для: Eugene77   (19.12.2008 в 17:38)
 

<?php
function myfunction/* string */ $s ) { /* ... */ }
?>


<?php
function myfunction$string ) { /* ... */ }
?>

  Ответить  
 
 автор: Eugene77   (19.12.2008 в 19:51)   письмо автору
 
   для: BinLaden   (19.12.2008 в 17:42)
 

Ваша находчивость делает вам честь!
Но, я всё же надеюсь, что существует и более прямолинейное решение.
Несмотря на то,что искал его уже в двух толстых книгах по PHP.

  Ответить  
 
 автор: BinLaden   (19.12.2008 в 20:13)   письмо автору
 
   для: Eugene77   (19.12.2008 в 19:51)
 

В принципе, достаточно глянуть в мануал и посмотреть как определяются функции. Хотя если Вы найдете "толстую книгу по PHP" с недокументированными возможностями -- скажите мне:)

  Ответить  
 
 автор: AcidTrash   (18.12.2008 в 22:14)   письмо автору
 
   для: Eugene77   (18.12.2008 в 19:51)
 

>string $s
Как сказал BinLaden, string здесь не к чему.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования