Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Otabek_Mansurov
9 / 10 / 5
Регистрация: 29.09.2016
Сообщений: 81
1

Как создать единую функцию (метод для класса) из приведенных функцией?

21.09.2017, 16:14. Просмотров 128. Ответов 2

Добрый день всем! Помогите мне создать из этих функцией одну единую функцию (метода) для класса пожалуйста. Эти функции в целом выполняет конвертацию php массива на javascript массив и записывает на указанный файл. Вот те три функции:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$array = array("hello", "world");
 
function js_str($s)
{
    return '"' . addcslashes($s, "\0..\37\"\\") . '"';
}
 
function js_array($array)
{
    $temp = array_map('js_str', $array);
    return '[' . implode(',', $temp) . ']';
}
 
$array = 'var cities = '.js_array($array). ';';
 
 
$fileName="script.js";
file_put_contents($fileName, $array);
Я пробовал вот так вот:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    public function js_str($s)
    {
        return '"' . addcslashes($s, "\0..\37\"\\") . '"';
    }
 
    public function js_array($array)
    {
        $temp = array_map('js_str', $array);
        return '[' . implode(',', $temp) . ']';
    }
 
    public function to_js_array($array, $filename="words.js")
    {
        $array = 'var words = '.$this->js_array($array). ';';
        $path = "/resources/files/";
        $path.=$filename;
        file_put_contents($path, $array);
    }
Но не работал и выводит ошибку. Здесь ошибка в том что обращение метода js_array() к методу js_str() не получается. Ну еще может есть какой то косяк в коде. Можно ли все это создать и выполнить в одном методе? Заранее благодарю всем.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2017, 16:14
Ответы с готовыми решениями:

Как в PHPUnit задать метод для тестирования конструктора класса?
Уважаемые, разработчики. Разбираюсь с юнит-тестированием под php. Есть класс...

Как создать отдельную функцию для каждого объекта класса
Ну например есть класс struct Class { void onUpdate (); } Мне надо...

Создать для класса виртуальный метод, возвращающий уникальный идентификатор класса
В курсаче по ООП сказано создать для класса виртуальный метод,возвращающий...

Создать метод для считывания строк из TextBox (патерн декоратор) для класса Stream
Здравствуйте, нужно создать метод для считывания строки из TextBox (патерн...

Создать конструктор класса и метод для вычисления
Здравствуйте, составил программу по условию, но только с одним классом, не знаю...

2
gbsoftware
117 / 113 / 77
Регистрация: 19.08.2013
Сообщений: 424
23.09.2017, 10:42 2
может надо было все таки класс создать?))
PHP
1
2
3
4
5
class ClassName {
...
//свойства и методы класса
...
}
0
Блеф
> /dev/null
284 / 118 / 85
Регистрация: 14.05.2014
Сообщений: 767
23.09.2017, 14:00 3
Otabek_Mansurov, не хочу вас расстраивать но для этого не надо создавать функции и классы.

PHPHTML
1
2
3
4
5
$array = ['Мой','массив'];
 
$js = 'var cities = '.json_encode($array);
 
file_put_contents($path, $array)
Добавлено через 3 минуты
php - http://sandbox.onlinephpfunctions.co...5b6e617c50fc1d
js - https://jsfiddle.net/f6Lx0tz4/#&togetherjs=P4SrRAo8SM
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2017, 14:00

Не получается создать метод для вывода вектора из класса
Здраствуйте, 2 день смотрю уроки по классам, но все бестолку. У меня имеется...

Как передать указатель на функцию через метод класса ?
typedef void (*FuncCallback)(float* flValue); Пробовал по всякому и ни как:...

Создать метод класса для заполнения массива случайными числами
При запуске, обьекты «а» заполняются постоянно одними и теми числами. Как это...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru